本文介紹下SpringBoot整合Mybatis(XML配置方式)的過程。java
[TOC]mysql
MyBatis 是一款優秀的持久層框架,它支持定製化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎全部的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可使用簡單的 XML 或註解來配置和映射原生類型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 對象)爲數據庫中的記錄。git
SpringBoot整合Mybatis也有兩種方式,分別爲XML配置方式和註解方式,主要優點點以下:github
XML映射文件也很簡單,只有不多的幾個頂級元素:spring
本文介紹XML配置方式,後續文章再介紹註解方式。sql
新建一個spring boot項目spring-boot-mybatis-xml,按照下面步驟操做。數據庫
1.pom.xml中引入jar瀏覽器
整合MyBatis的核心是依賴MyBatis-Spring-Boot-Starter,它提供了:緩存
pom.xml重要內容以下:springboot
<!-- mybatis-starter --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</version> </dependency> <!-- MySQL 鏈接驅動依賴 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.39</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
2.application.yml中添加配置
application.yml中添加數據源和mybatis的配置,內容以下:
spring: #數據源 datasource: url: jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull username: root password: 123456 driver-class-name: com.mysql.jdbc.Driver #mybatis配置 mybatis: typeAliasesPackage: com.example.springboot.mybatisxml.entity mapperLocations: classpath:mapper/*.xml config-location: classpath:mybatis-config.xml
3.添加User的映射文件
UserMapper.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" > <mapper namespace= "com.example.springboot.mybatisxml.dao.mapper.UserMapper" > <resultMap id ="UserMap" type="com.example.springboot.mybatisxml.entity.User"> <result column="id" property="id"/> <result column="name" property="name"/> <result column="sex" property="sex"/> <result column="password" property="password"/> <result column="des" property="des"/> </resultMap> <select id = "queryAllUsers" resultType= "com.example.springboot.mybatisxml.entity.User"> select * from user </select> </mapper>
4.添加dao接口
接口的名字和映射文件的名字相同,接口中方法的名字和要調用的映射文件中的標籤的id相同。
UserMapper.java代碼以下:
public interface UserMapper { List<User> queryAllUsers(); }
5.添加訪問控制層
UserController代碼以下:
/** * UserController * * @Author: java_suisui * */ @Slf4j @RestController @RequestMapping("/user") public class UserController { @Autowired private UserService userService; /** * 查詢 全部用戶 * */ @GetMapping("/queryAllUsers") public List<User> queryAllUsers(){ return userService.queryAllUsers(); } }
本地打開瀏覽器,訪問http://localhost:8080/user/queryAllUsers,成功後返回以下結果:
[{"id":1,"name":"張三","password":"123456","sex":0,"des":"無備註"}, {"id":2,"name":"李四","password":"123456","sex":0,"des":"無備註"}]
到此SpringBoot整合Mybatis(XML配置方式)的功能已經所有實現,有問題歡迎留言溝通哦!
完整源碼地址: https://github.com/suisui2019/springboot-study
推薦閱讀
5.SpringBoot中如何靈活的實現接口數據的加解密功能?
限時領取免費Java相關資料,涵蓋了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高併發分佈式、大數據、機器學習等技術。 關注下方公衆號便可免費領取: