说明

为了简化开发,可以集成tk,tkmybatis是在mybatis框架的基础上提供了很多工具,让开发更加高效,下面来看看这个框架的基本使用,后面会对相关源码进行分析,感兴趣的同学可以看一下,挺不错的一个工具。

引入依赖

集成tkmybatis就不需要再次引入mybatis的相关包了,已经被封装提在tk中。

org.springframework.boot

spring-boot-starter-web

tk.mybatis

mapper-spring-boot-starter

2.1.5

mysql

mysql-connector-java

runtime

org.projectlombok

lombok

true

org.springframework.boot

spring-boot-starter-test

test

org.junit.vintage

junit-vintage-engine

application.properties

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mymall?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=true&serverTimezone=UTC&useSSL=false&allowMultiQueries=true

spring.datasource.username=root

spring.datasource.password=root

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

mybatis.type-aliases-package=com.tk.mybatis.demo.entity

logging.level.com.tk= debug

BaseTkMapper.java

importtk.mybatis.mapper.common.Mapper;importtk.mybatis.mapper.common.MySqlMapper;/***@authorlpg

* @description: 增强mapper基类,支持批量操作,其他mapper继承此mapper

* @date 2020/10/2 16:04*/

public interface BaseTkMapper extends Mapper, MySqlMapper{

}

MymallMapper.java

importcom.tk.mybatis.demo.entity.MymallRole;importorg.apache.ibatis.annotations.Mapper;

@Mapperpublic interface MymallMapper extends BaseTkMapper{

}

MymallService.java

importcom.tk.mybatis.demo.entity.MymallRole;importjava.util.List;public interfaceMymallService {

ListgetRoles();

}

MymallServiceImpl.java

importcom.tk.mybatis.demo.entity.MymallRole;importcom.tk.mybatis.demo.mapper.MymallMapper;importcom.tk.mybatis.demo.service.MymallService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importtk.mybatis.mapper.entity.Example;importjava.util.List;

@Servicepublic class MymallServiceImpl implementsMymallService {

@AutowiredprivateMymallMapper mymallMapper;

@Overridepublic ListgetRoles() {

Example example= new Example(MymallRole.class);

example.selectProperties("name","enabled");returnmymallMapper.selectByExample(example);

}

}

BaseTkEntity.java

packagecom.tk.base.common;importcom.fasterxml.jackson.annotation.JsonFormat;importlombok.Data;importorg.springframework.format.annotation.DateTimeFormat;importtk.mybatis.mapper.annotation.LogicDelete;importjavax.persistence.Column;importjava.util.Date;

@Datapublic abstract classBaseTkEntity {/*** 删除状态

* 0:未删除

* 1:已删除*/@Column(name= "deleted")

@LogicDelete(isDeletedValue= 1,notDeletedValue = 0)protectedBoolean deleted;/*** 创建时间*/@JsonFormat(pattern= "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")

@DateTimeFormat(pattern= "yyyy-MM-dd HH:mm:ss")

@Column(name= "create_time")protectedDate createTime;/*** 创建人*/@Column(name= "create_user")protectedString createUser;/*** 最近更新时间*/@JsonFormat(pattern= "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")

@DateTimeFormat(pattern= "yyyy-MM-dd HH:mm:ss")

@Column(name= "update_time")protectedDate updateTime;/*** 更新人*/@Column(name= "update_user")protectedString updateUser;/*** 设置创建人和创建时间

*

*@parambaseEntityObj baseEntity的子类对象

*@param 对象类型*/

public voidsetUserAndTime(T baseEntityObj) {this.createTime =baseEntityObj.getCreateTime();this.createUser =baseEntityObj.getCreateUser();this.updateTime =baseEntityObj.getUpdateTime();this.updateUser =baseEntityObj.getUpdateUser();

}

}

MymallRole.java

importlombok.Data;importjavax.persistence.Column;importjava.util.Date;

@Datapublic classMymallRoleextends BaseTkEntity

{private intid;privateString name;privateString desc;privateBoolean enabled;}

MyMallController.java

importcom.tk.mybatis.demo.service.MymallService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.web.bind.annotation.GetMapping;importorg.springframework.web.bind.annotation.RestController;

@RestControllerpublic classMyMallController {

@AutowiredprivateMymallService mymallService;

@GetMapping("mall")publicString getRoles(){returnmymallService.getRoles().toString();

}

}

验证测试

启动服务,浏览器输入http://localhost:8080/mall

java项目tkmybatis整合_springboot集成tk mybatis相关推荐

  1. java项目tkmybatis整合_SpringBoot集成TkMybatis插件

    前提: 基于SpringBoot项目,正常集成Mybatis后,为了简化sql语句的编写,甚至达到无mapper.xml文件. 在本篇总结教程,不在进行SpringBoot集成Mybatis的概述. ...

  2. java项目任务跟踪系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署

    java项目任务跟踪系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 java项目任务跟踪系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 本源码技术栈: 项目架构:B ...

  3. tkmbatis 日志_springboot+maven+tk.mybatis+generator逆向工程

    1.父工程的pom.xml中导入依赖和插件,当前完整的文件如下: 4.0.0 com.sino demo_parent pom 1.0-SNAPSHOT bos org.springframework ...

  4. 在Java项目中整合Scala

    Scala是一个运行在Java JVM上的面向对象的语言.它支持函数编程,在语法上比Java更加灵活,同时通过Akka库,Scala支持强大的基于Actor的多线程编程.具有这些优势,使得我最近很想在 ...

  5. Java项目:基于jsp+mysql+Spring+mybatis的SSM业务代办帮跑腿管理系统

    作者主页:夜未央5788 简介:Java领域优质创作者.Java项目.学习资料.技术互助 文末获取源码 项目介绍 本项目分为管理员.用户与跑腿小哥三种角色: 跑腿小哥角色包含以下功能: 跑腿小哥登录, ...

  6. Java项目:基于jsp+mysql+Spring+mybatis的SSM在线中药药方管理系统

    作者主页:夜未央5788 简介:Java领域优质创作者.Java项目.学习资料.技术互助 文末获取源码 项目介绍 本项目分为药房人员.管理员与医生三种角色: 药房人员角色包含以下功能: 药房人员登录, ...

  7. java web中整合mq_spring-web 集成 rabbitmq

    引入java包: 本项目中仅引入了四个java包:amqp-client-5.7.3.jar,spring-rabbit-2.2.2.RELEASE.jar,spring-retry-1.2.4.RE ...

  8. Java项目使用Redis缓存数据

    Java项目使用Redis缓存数据 一.Redis的下载安装 1.下载gcc编译器 yum install gcc-c++ 安装完成后检查是否安装成功,查看版本 gcc --version 2.使用w ...

  9. MyBatis系列之--Java 项目(非SpringBoot)集成MyBatis

    MyBatis系列之--Java 项目(非SpringBoot)集成MyBatis 对MyBatis简单介绍 核心接口SqlSessionFactory 实战 1. Maven创建Java项目 2. ...

  10. 搭建eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo

    前言:我这里搭建好eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo.新手快速上手直接看demo. 最后处提供完整高质量de ...

最新文章

  1. 问题合集 ------- 用 Eclipse 平台进行 C/C++ 开发
  2. linux下C的一些开发技巧总结
  3. HDOJ 1896 Stones
  4. 测试的第一重境界:围着Bug转
  5. 军工产品元器件筛选标准,军用品测试实验室
  6. mysql 1093_mysql ERROR 1093 (HY000)
  7. oracle 11 ora 12514,客户端连接oracle11出现提示ORA-12514:错误解决方法
  8. 如何搭建云服务器以及使用
  9. 巫师编程语言“咒语” 设想
  10. 健身环1536级小结:相当适合码农的锻炼方式
  11. WPS2017 电子表格/Excel文件保护密码忘记了?
  12. 参加高中毕业十年同学会有感
  13. Unity制作RPG游戏——战斗注视LockOn实现方法
  14. 小学计算机课程课堂导入视频教程,第四届全国小学信息技术优质课观摩心得
  15. 关于mysql的utf8、utf8mb3、utf8mb4
  16. sentence Bert解读及代码示例
  17. ①、企业快速开发平台Spring Cloud之HTML 简介
  18. matlab网页制作代码
  19. 纯JS实现兼容IE8的多文件下载
  20. 联网游戏怎样修改服务器,Kaillera—-游戏联网服务器搭建

热门文章

  1. Android 笔记 json GSON,Android中使用Gson解析JSON数据
  2. [已实现]暴力破解路由器管理密码
  3. MATLAB高斯平顶化,一种高斯光束变换为平顶光束整形透镜的粒子群设计方法与流程...
  4. c语言运算符优先级(c语言运算符优先级由高到低的顺序)
  5. SRIO学习(三)——SRIO包
  6. 51单片机定时器实现PWM波
  7. arctanx麦克劳林公式推导过程_经典卢瑟福散射公式的初等推导
  8. 软件设计模式期末大作业——可乐商城管理系统
  9. Mac可以把html做成壁纸吗,「iWall」Mac动态桌面软件就用这款,还可使用网页作为桌面背景...
  10. 小米便签开源项目本地环境搭建与分析