Mybatis Plus是Mybatis的升级版本,提供一些默认的功能实现,只要按照其约定编写代码,就可以充分利用其特性。

SpringBoot集成Mybatis Plus步骤:

每个实体类定义一套Mybatis Plus接口与类

EntityBean,MapperInterface,IService,ServiceImpl

例如:

1、修改POM,添加Mybatis Plus依赖

<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 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><!-- 定义公共资源版本 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.6.RELEASE</version><relativePath/></parent><groupId>com.test</groupId><artifactId>EC5_Proj</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>EC5_Proj Maven Webapp</name><url>http://maven.apache.org</url><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--JSP支持的依赖--><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId></dependency><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><!--<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.0</version></dependency>--><dependency><groupId>com.baomidou</groupId><artifactId>mybatisplus-spring-boot-starter</artifactId><version>1.0.5</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId><version>2.1.8</version></dependency><dependency><groupId>tk.mybatis</groupId><artifactId>mapper</artifactId><version>3.4.5</version></dependency><!-- 数据源依赖 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.6</version><exclusions><exclusion><groupId>com.alibaba</groupId><artifactId>jconsole</artifactId></exclusion><exclusion><groupId>com.alibaba</groupId><artifactId>tools</artifactId></exclusion></exclusions></dependency><!-- 数据库驱动依赖 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!-- 分页插件 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.1.2</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifactId></dependency><dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-solr</artifactId></dependency><dependency><groupId>commons-beanutils</groupId><artifactId>commons-beanutils-core</artifactId><version>1.8.3</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional><scope>true</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>compile</scope></dependency><!--<dependency><groupId>com.test</groupId><artifactId>gfdev</artifactId><version>2.0</version><scope>system</scope><systemPath>${basedir}/src/lib/gfdev-2.0.jar</systemPath></dependency>--></dependencies><build><finalName>EC4_Proj</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><fork>true</fork></configuration></plugin></plugins></build>
</project>

2、修改application.properties配置文件

#SpringBoot服务端口配置
server.port=6060
server.context-path=/#spring.resources.static-locations=/css,/images,/img,/js#SpringMVC JSP目录配置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp#Http编码配置
spring.http.encoding.force=true
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true#Rabbitmq配置
spring.rabbitmq.host=192.168.25.1
spring.rabbitmq.port=5672
spring.rabbitmq.username=admin2
spring.rabbitmq.password=admin2
spring.rabbitmq.virtual-host=/spring.redis.database=0
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=redis
spring.redis.pool.max-active=8
spring.redis.pool.max-wait=-1
spring.redis.pool.max-idle=8
spring.redis.pool.min-idle=0
spring.redis.timeout=0#数据源配置
spring.datasource.name=w1
spring.datasource.url=jdbc:mysql://localhost:3306/w1?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.maxActive=20
spring.datasource.initialSize=1
spring.datasource.maxWait=60000
spring.datasource.minIdle=1#Mybatis实体类配置
#mybatis.mapper-locations=classpath:mapper/*.xml#Mybatis实体类配置
mybatis-plus.mapper-locations: classpath:mapper/*.xml#Solr配置
spring.data.solr.host=http://localhost:8984/solr/new_core#日志配置
logging.file=d:/springboot.log
logging.level.com.test.mapper=DEBUG
logging.level.com.test.servlet=DEBUG
logging.level.com.test.service.impl=DEBUG

3、定义实体类

package com.test.model;import java.io.Serializable;
import java.sql.Date;import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;//实体类
@TableName("t_good")
public class GoodInfo implements Serializable{@TableId(type=IdType.AUTO)private Integer id = null;private Integer no = null;private String name = null;private String brand = null;private Integer tid = null;private Date dt = null;@TableField(exist=false)private String tname = null;private Integer imgId = null;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public Integer getNo() {return id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getBrand() {return brand;}public void setBrand(String brand) {this.brand = brand;}public Integer getTid() {return tid;}public void setTid(Integer tid) {this.tid = tid;}public Date getDt() {return dt;}public void setDt(Date dt) {this.dt = dt;}public String getTname() {return tname;}public void setTname(String tname) {this.tname = tname;}public Integer getImgId() {return imgId;}public void setImgId(Integer imgId) {this.imgId = imgId;}}
package com.test.model;import java.io.Serializable;
import java.sql.Date;import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;//实体类
@TableName("t_type")
public class GoodTypeInfo implements Serializable{@TableIdprivate Integer id = null;private String name = null;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}}

4、定义Mapper

package com.test.mapper;import java.util.List;import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.test.model.GoodInfo;
import com.test.model.GoodTypeInfo;@Mapper
public interface GoodMapper extends BaseMapper<GoodInfo>{public List<GoodInfo> findGood(@Param("name") String name);public GoodInfo findGoodById(@Param("id") Integer id);public List<GoodTypeInfo> findType();
}

5、定义服务接口

package com.test.service;import java.util.List;import org.apache.ibatis.annotations.Param;import com.baomidou.mybatisplus.service.IService;
import com.test.model.GoodInfo;
import com.test.model.GoodTypeInfo;public interface IGoodService extends IService<GoodInfo>{public List<GoodInfo> findGood(String name);public Boolean saveGood(GoodInfo gi);public Boolean updateGood(GoodInfo gi);public Boolean deleteGood(Integer id);public GoodInfo findGoodById(Integer id);public List<GoodTypeInfo> findType();
}

6、服务实现类

package com.test.service.impl;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.test.mapper.GoodMapper;
import com.test.model.GoodInfo;
import com.test.model.GoodTypeInfo;
import com.test.service.IGoodService;@Service
public class GoodServiceImpl extends ServiceImpl<GoodMapper,GoodInfo> implements IGoodService{@Autowiredprivate GoodMapper mapper;@Overridepublic Boolean saveGood(GoodInfo gi) {try{mapper.insert(gi);return true;}catch(Exception e){e.printStackTrace();}return false;}@Overridepublic Boolean updateGood(GoodInfo gi) {try{mapper.updateById(gi);return true;}catch(Exception e){e.printStackTrace();}return false;}@Overridepublic Boolean deleteGood(Integer id) {try{mapper.deleteById(id);return true;}catch(Exception e){e.printStackTrace();}return false;}@Overridepublic GoodInfo findGoodById(Integer id) {try{return mapper.findGoodById(id);}catch(Exception e){e.printStackTrace();}return null;}@Overridepublic List<GoodTypeInfo> findType() {try{return mapper.findType();}catch(Exception e){e.printStackTrace();}return null;}@Overridepublic List<GoodInfo> findGood(String name) {return mapper.findGood(name);}}

7.Controller层自定义查询

代码:https://pan.baidu.com/s/1eTNkOZtrgWA1aw8OXsxIBw

SpringBoot集成Mybatis Plus相关推荐

  1. BindingException: Invalid bound statement (not found)问题排查:SpringBoot集成Mybatis重点分析...

    重构代码,方法抛出异常:BindingException: Invalid bound statement (not found) 提示信息很明显:mybatis没有提供某方法 先不解释问题原因和排查 ...

  2. java整合mybatis,springboot集成mybatis

    # springboot集成mybatis springboot基础mybatis还是很简单的,比之前springmvc集成mybatis要少很多配置,只要大家按照步骤一步一步来,几分钟就 能实现.具 ...

  3. springboot集成mybatis源码分析-mybatis的mapper执行查询时的流程(三)

    springboot集成mybatis源码分析-mybatis的mapper执行查询时的流程(三) 例: package com.example.demo.service;import com.exa ...

  4. springboot集成mybatis源码分析-启动加载mybatis过程(二)

    springboot集成mybatis源码分析-启动加载mybatis过程(二) 1.springboot项目最核心的就是自动加载配置,该功能则依赖的是一个注解@SpringBootApplicati ...

  5. springboot集成mybatis源码分析(一)

    springboot集成mybatis源码分析(一) 本篇文章只是简单接受使用,具体源码解析请看后续文章 1.新建springboot项目,并导入mybatis的pom配置 配置数据库驱动和mybat ...

  6. SpringBoot集成Mybatis用法笔记

    今天给大家整理SpringBoot集成Mybatis用法笔记.希望对大家能有所帮助! 搭建一个SpringBoot基础项目. 具体可以参考SpringBoot:搭建第一个Web程序 引入相关依赖 &l ...

  7. Java 捕获 mybatis异常_3 springboot集成mybatis和全局异常捕获

    mybatis有两种方式,一种是基于XML,一种是基于注解 springboot集成mybatis 首先先创建表,这里都简化了 DROP TABLE IF EXISTS `user`; CREATE ...

  8. Springboot集成mybatis通用Mapper与分页插件PageHelper

    Springboot集成mybatis通用Mapper与分页插件PageHelper 插件介绍 通用 Mapper 是一个可以实现任意 MyBatis 通用方法的框架,项目提供了常规的增删改查操作以及 ...

  9. 一个项目了解 SpringBoot 集成 MyBatis

    SpringBoot 集成 MyBatis 创建项目 1.引入依赖 mybatis-spring-boot-starter 依赖 完整的 pom.xml 2.配置文件 加入mybatis配置 完整的配 ...

  10. SpringBoot教程(十一) | SpringBoot集成Mybatis

    上一篇文章我们介绍了SpringBoot集成JdbcTemplate.简单体验了一下JdbcTemplate框架的用法,今天的内容比较重要,我们来介绍一下SpringBoot集成Mybatis的步骤. ...

最新文章

  1. python路径拼接os.path.join()函数的用法
  2. javascript小实例,PC网页里的拖拽(转)
  3. bzoj 3224 普通平衡树 vactor的妙用
  4. Linux 下安装matlab2014a
  5. 程序组件通信方案集锦
  6. Hybris Commerce的 Master Tenant和Netweaver的System Client
  7. Android studio之导入project出现SDK location not found. Define location with sdk.dir in the local.proper
  8. HttpServletRequest(request的一些API)
  9. 模拟网页行为之实践四
  10. 前后端分离必备的接口规范,十分接地气
  11. 小白学数据分析-----ARPDAU的价值
  12. 第一次工作面试(蘑菇街)
  13. BAT中for循环如何执行多条命令
  14. atitit 图像处理机器视觉专业博硕连读课程表.xlsx
  15. c语言小球消砖块的游戏,求大神帮忙看看这个弹弹球消砖块的游戏代码,为什么speed只能15...
  16. 校园导航系统之用弗洛伊德算法求加权图的最短路径
  17. String求求你别秀了
  18. AGM FPGA之AG10K 系列的开发建议(连载二)
  19. SAP的SLED的2个验证
  20. Hadoop回收站trash

热门文章

  1. 更改activemq版本导致的topic clientid 连接不上
  2. popwindow的基本使用
  3. OLTP和OLAP基础分析
  4. ns2仿真学习(三)-不同tcp拥塞控制的竞争能力
  5. 查询相册和摄像头的使用权限
  6. 神雕侠侣服务器维修时间,《神雕侠侣》2020年6月25日更新维护新服开启公告
  7. oracle-增删查改
  8. php 文件防盗链代码,php防盗链几种代码_PHP教程
  9. 杭州跨境电商综试区线下园区:跨境电商已成实体经济助推器
  10. Cookie欺骗的原理