1.配置环境
新建项目 语言java 类型 maven
配置依赖项(共三项)
根据个人数据库选择数据库驱动 如 mysql ->mysql driver
选择 Mybatis Framework
添加lombok
2.连接数据库
点解右侧数据库按钮 点加号选择数据源
此时要注意数据库url路径
必须和application.properties文件里的路径保持一致
配制以下数据
3.操作
每个项目为了简化代码,实体类必不可少
添加实体类 pojo 可以 .User连类一起创建
之后,为实现数据库的增删改查操作,最好添加一个接口UserMapper
该接口中的类,注意添加注释 @mapper 可以
在运行时,自动生成该接口的实现类对象(代理),并且将该对象交给IOC容器管理
实现了依赖注入以及简化配置。
然后开始编写接口方法
增删改查操作结果如下:
编写相应操作的接口方法时,要添加对应的注释。
若没有提示信息的话 可以右键点显示上下文操作,找到语言注入设置,并选择相应的数据库语言
操作时,做好的选择是使用#{}的方式接收参数,这样做性能更高,更安全。
注意事项:#{}里的参数名,要和实体类,数据库字段名 保持一致。
原因:实体类属性名和数据库字段名保持一致,mybatis会自动封装,否则不能封装。
而#{}里的参数名和实体类保持一致,调用实体类时才能获取到对应数据,并且更加明了。
不能封装解决方法:
1.给数据库字段名起别名和实体类保持一致。
2.通过@Results。@Result注解手动映射封装.
eg:@Results({
@Pesult(column = "数据库字段名",property = “实体类对应属性名”)(一个@Result注解映射一个无法封装字段)
})
3.开启mybatis的驼峰命名自动开关 如 a_sj ->aSj
方法为在application.properties文件中加入
mybatis.configuration.map-underscore-to-camel-case=true
4.xml文件配制sql语句
首先在resources目录下,创建和接口类相同的文件夹。创建时 点号给为/
之后,创建xml文件要与实体类名一致
然后,在官方文档上复制粘贴约束条件
mapper标签可选相应操作的语句
注意事项: mapper 的username与接口的全类名保持一致
操作的id与接口中的方法保持一致,且返回值为单条记录的类型
添加插件 mybatisX能快速定位xml文件关联的内容
5.动态sql语句
if 判断条件是否成立,如果条件为true则拼接sql语句
需要时最好和set,where标签使用,可以自动去除多余符号,保证sql语句的正确合理
foreach 循环遍历
属性:collection 遍历的集合
item 遍历出来的元素
separator 分隔符
open 遍历开始前拼接的sql片段
close遍历开始后拼接的sql片段
sql,include标签
sql标签 id名和include 的refid属性保持一致
sql标签内容为重复书写的sql语句,xml文件使用时,直接使用include标签就行