提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
Mybatis-SpringBoot
提示:以下是本篇文章正文内容,下面案例可供参考
一、Mybatis-SpringBoot
springboot-mybatis
mybatis可以使用简单的xml或者注解来配置映射关系、接口和java的POJO(普通老式java对象)为数据库的记录
mybatis和hibernate比较
mybatis可以跟细致优化sql,更加灵活,对于复杂查询较好,运行速度上有优势,并且开放了插件接口, 但是移植性不好,不同数据库需要写不同的sql。
hibernate的dao曾比mybatis简单,维护起来比mybatis好,增删改查维护起来更加方便,数据库移植性好,有更好的二级缓存,可以用第三方缓存。但是多表关联查询很复杂,项目前期顺利,后期抓狂。
使用步骤
- 引入mybatis依赖
引入jdbc链接
二、使用步骤
xml配置
application配置数据源
spring.datasour ce.url=jdbc :my sql://127.0.0.1:3306/mytestdb
spring.datasour ce.username=root
spring.datasour ce.pas sword=123456
#使用mybatis - config. xml时的配置项
#mybatis . config-location=classpath:mybatis - config. xml
#代替mybatis - config. xml的配置项
#mybatis .mapper-locations=classpath*:/mapper s /*. xml
#mybatis .type-aliases -package=sample.mybatis .domain
创建mybatis - config. xml文件 配置model/domain位置和mapper位置
编写*Mapper. xml 编写sql,设置参数类型和返回类型
注解配置
在启动类上增加对mapper的包扫描注解 @MapperScan("扫描地址")
如果不使用@MapperScan注解,还可以在每个 mapper 接口类上加上 @Mapper
开发Mapper类,编写sql, 提供给service调用
@Select(" selec t name,role from guest")
@Delete("delete from guest where name=#{name}")
@Update("update gues t set role=#{role} where name=#{name}")
@Options (useGeneratedKeys = true, keyProperty = "id")
@Insert("insert into guest(name,role) values(#{name},#{role})")