SpringBoot整合MyBatis
SpringBoot整合MyBatis
1、Mybastis的优点
myBatis支持定制化SQL、存储过程以及高级映射。MyBatis几乎避免了所有的JDBC代码手动设置参数以及获取结果集。
在传统的SSM框架整合中,使用MyBatis需要大量的XML配置,而在SpringBoot中,MyBatis官方提供了一套自动化的配置方案,可以让MyBatis做到开箱即用。
2、添加MyBatis依赖并引入配置文件
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
除此之外,还要记得引入mybatis-config.xml文件,并且配置相关的数据库连接属性值
3、创建数据访问层
- 在项目的根包下创建一个子包Mapper,在Mapper中创建BookMapper
- 有如下两种方式可以指定该类为一个mapper:
- 在BookMapper上添加@Mapper注解
- 在配置类
application.yaml/application.proprities
上添加@MapperScan("org.huawei.mapper")注解,表示扫描org.huawei.mapper这个包下的所有接口为mapper,这样的话就不用在每个mapper类上添加@Mapper注解了。
@Mapper
public interface BookMapper {
Book getBookById();
}
4、创建BookMapper.xml
在与BookMapper.java相同的位置创建BookMapper.xml文件,并输入相关的语句:
注意MyBatis书写过程中两种值传递方式的不同 ${} 和 #{}
<mapper namespace="org.huawei.mapper.BookMapper">
<select id="getBookById" returnType="org.huawei.model.Book">
select * from book where id = #{id}
</select>
</mapper>