本文已参与「新人创作礼」活动,一起开启掘金创作之路。
答辩临近,经过那天的模拟答辩,心里越来越慌了,今天大致过了一下之前的总结,发现框架部分还少了一些东西,现对其补充一下,再补全一下稿子..........
Mybatis
Mybatis 是对 JDBC 的封装,它让数据库底层操作变得透明。Mybatis 的操作都是围绕一个 SqlSessionFactory 实例展开的。Mybatis 通过配置文件关联到各实体类的 Mapper 文件,Mapper 文件中配置了每个类对数据库所需进行的 sql 语句映射。在每次与数据库交互时,通过 SqlSessionFactory 拿到一个 SqlSession,再执行 sql 命令。
大致使用方法
- 导入依赖
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.36</version>
</dependency>
- 定义 Mapper 接口
- 创建 xml 文件
xml 文件有两个组成部分
头文件:
//头文件:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
主体:
//查询映射标签(select):
<mapper namespace="cn.kgc.mapper.PersonMapper">
<select id="findCount" resultType="java.lang.Integer">
</select>
</mapper>
(1)mapper叫根节点,根节点有个属性是namespace=""、namespace=""、的作用是映射我们mapper的全路径,在以后的使用中会自动映射成我们mapper的实现类
(2)select里面的Id=“”一般和我们PersonMapper里面的方法名保持一致
(3)返回值这里有一个专门的属性叫resultType="java.lang.Integer"
(4)方法名和返回值都对应之后看有无参数,如果有要加上parameterType=""
写 sql 语句
<mapper namespace="cn.kgc.mapper.PersonMapper">
<select id="findCount" resultType="java.lang.Integer">
select count(*) from t_user
</select>
</mapper>
在 resources 中新建主配置文件 mybatis-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-config.dtd">
这里主要介绍 Mybatis 是什么,大致怎么用,到时候在台上有东西可以讲出来,下一篇将介绍一下 Mybatis 在代码中是怎么写代码来用的,了解原理后站在台上就更有话可说。
有错误请指正
我向你敬礼啊,Salute!