转:https://blog.csdn.net/qq_35153200/article/details/79538440

开发环境:

开发工具:Intellij IDEA 2017.2.3
JDK : 1.8.0_144
spring boot 版本 : 1.5.10.RELEASE
maven : 3.2.3
SpringBoot集成MyBatis加入基础依赖:
mybatis:
<!--mybatis-->
<dependency>
   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <version>1.3.1</version>
</dependency>
<!--通用mapper插件-->
<dependency>
   <groupId>tk.mybatis</groupId>
   <artifactId>mapper-spring-boot-starter</artifactId>
   <version>1.1.5</version>
</dependency>

MySQL:
<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.38</version>
</dependency>

数据库配置:
application.yml
spring:
  datasource:
     url: jdbc:mysql://192.168.1.59:3306/test?useUnicode=true&characterEncoding=UTF-8
     username: root
     password: 123456
     driver-class-name: com.mysql.jdbc.Driver

在Mysql数据库中创建数据表:
CREATE DATABASE mytest;
 USE mytest; 
CREATE TABLE t_user(
     id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
     name VARCHAR(255) NOT NULL , 
     password VARCHAR(255) NOT NULL ,
     phone VARCHAR(255) NOT NULL ) ENGINE=INNODB AUTO_INCREMENT=1000 DEFAULT CHARSET=utf8;

MyBatis配置文件配置
application.yml(映射文件配置的位置)
#初始化自定义的接口mapper
mapper:
    mappers: com.test2.mapper.CommonMapper
    not-empty: false
    identity: MYSQL

使用Mybatis:
创建映射对象User
/** * User实体映射类 
    * Created by Administrator on 2017/11/24. 
    */ 
@Table(name = "t_user")
public class User { 
    @Id
    private Integer id; 
    private String name; 
    private String password; 
    private String phone; 
    //省略 get 和 set ... 
}

实现自己的接口,继承通用的mapper
package com.test2.mapper;
import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;
public interface CommonMapper<T> extends Mapper<T>,MySqlMapper<T> {
    //这里实现一个自己的接口,继承通用的mapper,关键点就是这个接口不能被扫描到(不加注解就不会被扫描到),
}

创建User映射的操作UserMapper,为了后续单元测试验证,实现插入和查询操作
@Mapper
public interface UserMapper extends CommonMapper<User>{
}

创建单元测试:
@RunWith(SpringRunner.class)
@SpringBootTest
public class Demo2ApplicationTests {
   @Autowired
   private UserMapper userMapper;
   @Test
   public void insert(){
      User user = new User();
      user.setName("aaa");
      user.setPassword("222222");
      user.setPhone("123456");
      userMapper.insert(user);
   }
}

通用mapper版:
    1.首先需要在pom.xml中引入通用mapper插件包;
   2.在创建实体类时,需要指明表名和主键id
   3.实现自己的通用接口,继承通用的mapper
   4.创建的mapper接口,只需要继承自定义的通用接口就可以使用默认的方法
注意:配置版、通用mapper版、配置文件版,这三版可以混合使用,

转载于:https://www.cnblogs.com/duende99/p/10461666.html

通用mapper版+SpringBoot+MyBatis框架+mysql数据库的整合相关推荐

  1. springboot+mybatis+sqlserver导出数据库数据并实现下载到excel

    springboot+mybatis+sqlserver导出数据库数据并实现下载到excel 1.准备工作 1.1 下载一个springboot框架demo 1.2 配置maven 1.3 引入需要的 ...

  2. java毕业设计诗歌分享平台源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计诗歌分享平台源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计诗歌分享平台源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技术栈: 项目 ...

  3. java毕业设计流浪动物救助及领养平台源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计流浪动物救助及领养平台源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计流浪动物救助及领养平台源码+lw文档+mybatis+系统+mysql数据库+调试 ...

  4. java毕业设计西安财经大学校园一卡通管理系统源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计西安财经大学校园一卡通管理系统源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计西安财经大学校园一卡通管理系统源码+lw文档+mybatis+系统+mysq ...

  5. java毕业设计社区养老院管理系统源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计社区养老院管理系统源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计社区养老院管理系统源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技 ...

  6. java毕业设计-物流管理系统-源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计-物流管理系统-源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计-物流管理系统-源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技术栈 ...

  7. java毕业设计社区果蔬电商平台演示录像源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计社区果蔬电商平台演示录像源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计社区果蔬电商平台演示录像源码+lw文档+mybatis+系统+mysql数据库+调 ...

  8. java毕业设计普通中学体育卫生信息管理系统源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计普通中学体育卫生信息管理系统源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计普通中学体育卫生信息管理系统源码+lw文档+mybatis+系统+mysql数 ...

  9. java毕业设计理发预约系统源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计理发预约系统源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计理发预约系统源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技术栈: 项目 ...

最新文章

  1. 2015 Multi-University Training Contest 2 1002 Buildings
  2. 地址空间和虚拟内存(转载)http://topic.csdn.net/u/20090619/10/4c62a13b-536b-4b0a-af09-2271c6a104e1.html...
  3. 网络钓鱼大讲堂 Part4 | 网络钓鱼攻击战术
  4. professional asp.net 4 with c# and VB.net 阅读笔记
  5. feign-hystrix的使用
  6. sizeof 数组_简单的一维数组竟然有这么多坑?
  7. Rust中Turbofish之函数后面双冒号(::)用法
  8. 1.5T和2.0L哪个好?
  9. Kotlin 的优点
  10. 开式系统管径推荐选型_列管式换热器选型设计计算
  11. 《App 后台开发运维和架构实践》完整目录
  12. Windows10 VMware 虚拟机桥接模式无法上网 但是和宿主机能互相ping通
  13. U盘中毒后被隐藏的文件夹无法隐藏选项无法取消
  14. Excel表格如何自动添加边框
  15. 洛谷 U84985 Seaway找路
  16. 「CF1154F」Shovels Shop【背包DP】
  17. 大气幼儿园html模板,幼儿园儿童HTML主题
  18. python爬虫音乐图片的感受_python爬虫+词云图,爬取网易云音乐评论
  19. 【超全】Go语言超详细学习知识体系
  20. Liang的Rootkit习作-ZION

热门文章

  1. 什么是交互设计?交互设计是用来干什么的?
  2. 前端请求后端数据的三种方式
  3. 学java需要学c语言吗?
  4. 清华计算机系教学计划,清华大学电子信息科学与技术教学计划
  5. matlab案例 光学,MATLAB仿真及其在光学课程中的应用.pdf
  6. linux安装yum的脚本,lnmp一键安装脚本yum方式快速安装
  7. Redis——Java连接Redis
  8. 算法应用四:【经典算法】易混淆的图像处理总结
  9. SCI科技论文写作、投稿与发表(一)
  10. preprocessing.StandardScaler中fit、fit_transform、transform的区别