如何整合MyBatis

1、pom依赖

        <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><!-- 分页插件 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.5</version></dependency><!--mapper --><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId><version>1.1.3</version></dependency><!-- alibaba的druid数据库连接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.9</version></dependency>

2、添加配置

spring.datasource.name=mysql_test
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
#druid相关配置
spring.datasource.druid.filters=stat
spring.datasource.druid.driver-class-name=com.mysql.jdbc.Driver
#基本属性
spring.datasource.druid.url=jdbc:mysql://localhost:3306/test?characterEncoding=utf8&useSSL=false
spring.datasource.druid.username=root
spring.datasource.druid.password=1234
#配置初始化大小/最小/最大
spring.datasource.druid.initial-size=1
spring.datasource.druid.min-idle=1
spring.datasource.druid.max-active=20
#获取连接等待超时时间
spring.datasource.druid.max-wait=60000
#间隔多久进行一次检测,检测需要关闭的空闲连接
spring.datasource.druid.time-between-eviction-runs-millis=60000
#一个连接在池中最小生存的时间
spring.datasource.druid.min-evictable-idle-time-millis=300000
spring.datasource.druid.validation-query=SELECT 'x'
spring.datasource.druid.test-while-idle=true
spring.datasource.druid.test-on-borrow=false
spring.datasource.druid.test-on-return=false
#打开PSCache,并指定每个连接上PSCache的大小。oracle设为true,mysql设为false。分库分表较多推荐设置为false
spring.datasource.druid.pool-prepared-statements=false
spring.datasource.druid.max-pool-prepared-statement-per-connection-size=20
#Mapper路径
mybatis.mapper-locations=classpath=mapper/*.xml
#pagehelper
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

3、自动生成Mapper

添加Mybatis的自动生成插件

            <plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.2</version><configuration><configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile><overwrite>true</overwrite><verbose>true</verbose></configuration><dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><dependency><groupId>tk.mybatis</groupId><artifactId>mapper</artifactId><version>3.4.0</version></dependency></dependencies></plugin>

配置Mybatis的generatorConfig

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration><properties resource="application.properties"/><context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat"><property name="beginningDelimiter" value="`"/><property name="endingDelimiter" value="`"/><plugin type="tk.mybatis.mapper.generator.MapperPlugin"><property name="mappers" value="sample.mybatis.mapper.MyMapper"/></plugin><jdbcConnection connectionURL="jdbc:mysql://localhost:3306/test?useUnicode=true"driverClass="com.mysql.jdbc.Driver"userId="root"password="1234"></jdbcConnection><javaModelGenerator targetPackage="sample.mybatis.entity" targetProject="src/main/java"></javaModelGenerator><sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"/><javaClientGenerator targetPackage="sample.mybatis.dao" targetProject="src/main/java"type="XMLMAPPER"/><table tableName="city"><!--mysql 配置--><generatedKey column="id" sqlStatement="Mysql" identity="true"/></table></context>
</generatorConfiguration>

执行插件会自动生成实体Bean,Mapper接口和对应的xml文件。

5、写个简单的Controller触发调用

@RestController
public class CityController {@Autowiredprivate CityMapper cityMapper;@GetMapping("/")public List<City> index() {PageHelper.startPage(0, 3);List<City> cities = this.cityMapper.selectAll();return cities;}}

启动项目后通过PostMan访问:http://localhost:8080/

源码地址:GitHub


本篇到此结束,如果读完觉得有收获的话,欢迎点赞、关注、加公众号【贰级天災】,查阅更多精彩历史!!!

转载于:https://www.cnblogs.com/YJTZ/p/10617506.html

SpringBoot2.0应用(五):SpringBoot2.0整合MyBatis相关推荐

  1. SpringBoot精藏(五)SpringBoot整合mybatis

    本文主要讲解如何在springboot下整合mybatis,并访问数据库.由于mybatis这个框架太过于流行,所以我就不讲解了. 引入依赖 在pom文件引入mybatis-spring-boot-s ...

  2. SpringBoot (五) :SpringBoot整合mybatis

    说在前面 mybatis刚开始使用的时候比较麻烦,需要各种配置文件.实体类.dao层映射关联.还有一大推其它配置.初期开发了generator可以根据表结果自动生产实体类.配置文件和dao层代码,可以 ...

  3. SpringBoot2.0 基础案例(10):整合Mybatis框架,集成分页助手插件

    一.Mybatis框架 1.mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获 ...

  4. springboot2整合mysql5_SpringBoot2.X (二十五):SpringBoot整合 Mybatis + MySQL CURD 示例

    话不多数,直接开始撸代码- 工程结构图 开始之前先放张工程结构图 1.maven 依赖: org.springframework.boot spring-boot-starter-web org.my ...

  5. Spring Boot2.0 整合mybatis、分页插件、druid

    2019独角兽企业重金招聘Python工程师标准>>> 前言 本文主要是针对SpringBoot2.0.2版本,实现整合mybatis.分页插件.druid等组件,实现完整的web服 ...

  6. mybatis注册了mapper但是还是报错_springboot整合Mybatis

    五.springboot整合Mybatis 官方文档:http://mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/ ...

  7. SpringBoot2.0之四 简单整合MyBatis

    从最开始的SSH(Struts+Spring+Hibernate),到后来的SMM(SpringMVC+Spring+MyBatis),到目前的S(SpringBoot),随着框架的不断更新换代,也为 ...

  8. 【夏目鬼鬼分享】SpringBoot2.0整合mybatis

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML ...

  9. mysql8.0用mybatis哪个版本_SpringBoot整合MyBatis与MySql8.0

    一.前言 之前已经有一篇文章讨论过SpringBoot整合MyBatis,因而此篇不在重复累赘,本文主要是最新版的SpringBoot2.0与MyBatis.最新MySQL8.0整合过程中遇到的问题进 ...

最新文章

  1. Python排序函数用法
  2. [Android]Space控件的应用场景
  3. android 6.0权限
  4. 英特尔核芯显卡控制面板没有了_只认性能你就输了!英特尔第十代酷睿处理器最全解析...
  5. 嵌套字典|python_Python | 如果不是,则使用嵌套,根据销售额计算折扣
  6. python 文件服务器
  7. jupyter notebook选择conda环境
  8. mui.ajax php,求助!!!关于mui ajax获取不到后台数据
  9. eclipse上windowsbuilder 安装
  10. sql脚本 windows导出 linux乱码,mysql query browser中文乱码的解决方法
  11. 【生物信息学】外显子测序的原理及优缺点
  12. CRM如何维护客户关系?CRM成功案例分析
  13. 数字内容产业的产业链结构
  14. 吴恩达机器学习——反向传播算法
  15. PCB工艺多层盲孔板+树脂塞孔工艺——深亚电子
  16. 转来的,激励激励自己
  17. 第四章-linux内核裁剪与移植
  18. 阿里云Linux服务器安装Maven实战教程
  19. c语言操作mysql和数据库基本操作
  20. python爬取饿了么外卖商家数据_python爬饿了么外卖数据(1)

热门文章

  1. libiconv交叉移植
  2. SQLite指南(5) - PRAGMA命令用法(完整)
  3. L1-079 天梯赛的善良 (20 分)-PAT 团体程序设计天梯赛 GPLT
  4. [Java] 蓝桥杯 BASIC-10 基础练习 十进制转十六进制
  5. 【离散数学】滨江学院 期末考试 题库
  6. iis怎么更换php版本,Windows 下PHP+IIS的安装方法(PHP版本为5.0)
  7. 拖动内容,滚动条滚动,横向
  8. Oracle 修改表空间文件路径
  9. MySQL的odbc驱动 下载及安装
  10. 【2-SAT】URAL - 2089 - Experienced coach