springboot整合mybatis全过程实例
以往整合SSM需要多次配置,有点复杂,既然已经有了springboot,那为什么不直接用springboot呢?
我们选用intelliJ IDEA,创建springboot的方法请参照:IDEA下创建Spring Boot项目
在此基础上我们只需要引入mybatis即可:
1.在pom.xml中添加相关依赖:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency>
2.本地创建一个demo数据库,我们建一个test数据库和student表:

3.创建相应实体,控制器和mapper文件:

其中Student.java文件:(我们重写toString()方法,方便后面演示)
 
package com.example.demo.models; /** * Created with IntelliJ IDEA. * User: Mason * Date: 2018/6/14 * Time: 14:29 */ public class Student { private int id; private String name; public int getId() { return id; } private int age; private String subject; public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } public void setSubject(String subject) { this.subject = subject; } public int getAge() { return age; } public String getSubject() { return subject; } @Override public String toString(){ return "Student{" + "id=" + id + ", name='" + name + '\'' + ", age=" + age + ", subject=" + subject + '}'; } }
StudentMapper.java文件:是一个接口类,具体的SQL语句我们写在StudentMapper.xml文件中
 
package com.example.demo.dao; import com.example.demo.models.Student; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository; /** * Created with IntelliJ IDEA. * User: Mason * Date: 2018/6/14 * Time: 14:32 */ @Mapper @Repository public interface StudentMapper { Student getStuByName(String name); }
StudentController.java文件:浏览器访问入口,控制器文件,在里面引用接口中的方法
 
package com.example.demo.controller; import com.example.demo.dao.StudentMapper; import com.example.demo.models.Student; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * Created with IntelliJ IDEA. * User: Mason * Date: 2018/6/14 * Time: 14:41 */ @RestController public class StudentController { @Autowired StudentMapper studentMapper; @RequestMapping(value="/qs") public String qs(){ Student student = studentMapper.getStuByName("mson"); return student.toString(); } }
4.添加StudentMapper.xml文件,我们将文件放在resource/mapper中

具体内容如下:
 
<?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.demo.dao.StudentMapper" > <select id="getStuByName" resultType="Student"> SELECT * FROM students WHERE name = #{name} </select> </mapper>
5,在application.properties中添加数据库配置和mapper扫描配置
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8 spring.datasource.username=test spring.datasource.password=test spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.database = mysql #Mybatis扫描路径 mybatis.mapper-locations=classpath*:mapper/*.xml #对应我们的实体类所在的包 mybatis.type-aliases-package=com.example.demo.models
6,到此为止已经完成springboot整合mybatis,启动程序测试一下:

OK,成功。
基础知识,记录以便查看。


 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号