古语有云,先天下之忧而忧;后天下之乐而乐,爷娘闻女来,自挂东南枝…
咳咳,有点跑题了,回想当初我学习springboot的时候,觉得最重要的就是先把springboot和mybatis搞通,毕竟不管咋说,先在localhost:8080看到json对象才是一个安心,所以秉着先天下之忧的心态,想写今天这么一个傻瓜式springboot整合mybatis,文采有限,技术不高。如有大神路过,请指点一二,如实在看不惯,请轻喷…
整合三大要点
- Jar包(Pom.xml)
- springboot配置文件(application.properties)
- 各种文件映射(XXMapper.xml)
具体说明
1.spring boot整合mybatis的jar包
看了网上那么多各种教程,千篇一律 孜孜不倦的甚至将怎么在idea中新建springboot项目都写到了博客中,鄙人看了确实无感,相信各位看官这玩意肯定会,直接上干货。你只需要新建一个springboot项目,什么也别勾选,直接复制我的pom文件,文件如下
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>org.hyx</groupId>
<artifactId>springboot-mybatis-crud</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springboot-mybatis-crud</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
到此为止,第一步jar包问题解决
2.springboot配置文件
废话不多说,直接上代码
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/log?serverTimezone=UTC
spring.datasource.username=root
spring.datasource.data-password=
mybatis.type-aliases-package=org.hyx.springbootmybatiscrud.entity
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
有的小伙伴就想问了:我直接复制你的代码行吗?我:那肯定不行;小伙伴:***,你不是傻瓜式操作么,你是不是没把我当傻瓜?
哈哈,当然不是,请看下图:
怎么样各位宝贝,看完这张图是不是清晰多了?
到此,第二步配置文件问题解决
3.各种文件映射
文件映射主要是:
- 让你的XXXMapper.xml能找到自己的小伙伴
- 让你的主类能找到你的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="org.hyx.springbootmybatiscrud.mapper.LogMapper">
<resultMap id="BaseResultMap" type="org.hyx.springbootmybatiscrud.entity.Log">
<id column="id" jdbcType="INTEGER" property="id" />
<result column="user_id" jdbcType="INTEGER" property="userId" />
<result column="message" jdbcType="VARCHAR" property="message" />
<result column="patent_info_id" jdbcType="INTEGER" property="patentInfoId" />
<result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
<result column="modify_date" jdbcType="TIMESTAMP" property="modifyDate" />
<result column="is_delete" jdbcType="TINYINT" property="isDelete" />
</resultMap>
</mapper>
到此为止,第三步已经完成
接下来,你就可以新建你的controller,service,mapper来尽情的从你的数据库取数据啦,不过小伙伴们千万别忘了在对应的java文件的类名上加上@Controller,@Service和@Mapper,不然是会报错的哈!!
当然,肯定有小伙伴们见到过Mapper接口不加@Mapper注解的情况。确实,不加@Mapper也可以,但是需要在你的主类上加上
@MapperScan(“你的Mapper接口所在包”)
到此为止springboot整合mybatis傻瓜教学完成,各位看完是不是觉得自己都变成傻瓜了哈哈
码字不易,希望各位小伙伴能给点个赞,如有什么问题可以在下方评论区留言,谢谢各位!!!!