若依前端分离版整合mybatis-plus
基本上参考官帮助文档就可以http://doc.ruoyi.vip/ruoyi-vue/document/cjjc.html#%E9%9B%86%E6%88%90mybatisplus%E5%AE%9E%E7%8E%B0mybatis%E5%A2%9E%E5%BC%BA
1.ruoyi-common\pom.xml
模块添加整合依赖添加依赖。打开mybatisplus官网,用最新的MyBatis-Plus
<!-- mybatisPlus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.1</version></dependency>
2.ruoyi-admin
文件application.yml
,修改mybatis配置为mybatis-plus。将mybatis 改成mybatis-plus就行了
# MyBatis Plus配置
mybatis-plus:# 搜索指定包别名typeAliasesPackage: com.ruoyi.**.domain# 配置mapper的扫描,找到所有的mapper.xml映射文件mapperLocations: classpath*:mapper/**/*Mapper.xml# 加载全局的配置文件configLocation: classpath:mybatis/mybatis-config.xml
3.ruoyi-framework/config/添加Mybatis Plus
配置MybatisPlusConfig.java
。 原来的MyBatisConfig.java
需要删除掉。
package com.ruoyi.framework.config;import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;/*** Mybatis Plus 配置* * @author ruoyi*/
@EnableTransactionManagement(proxyTargetClass = true)
@Configuration
public class MybatisPlusConfig
{@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor(){MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();// 分页插件interceptor.addInnerInterceptor(paginationInnerInterceptor());// 乐观锁插件interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());// 阻断插件interceptor.addInnerInterceptor(blockAttackInnerInterceptor());return interceptor;}/*** 分页插件,自动识别数据库类型 https://baomidou.com/guide/interceptor-pagination.html*/public PaginationInnerInterceptor paginationInnerInterceptor(){PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();// 设置数据库类型为mysqlpaginationInnerInterceptor.setDbType(DbType.MYSQL);// 设置最大单页限制数量,默认 500 条,-1 不受限制paginationInnerInterceptor.setMaxLimit(-1L);return paginationInnerInterceptor;}/*** 乐观锁插件 https://baomidou.com/guide/interceptor-optimistic-locker.html*/public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor(){return new OptimisticLockerInnerInterceptor();}/*** 如果是对全表的删除或更新操作,就会终止该操作 https://baomidou.com/guide/interceptor-block-attack.html*/public BlockAttackInnerInterceptor blockAttackInnerInterceptor(){return new BlockAttackInnerInterceptor();}
}
4.以上就集成完了,下面改domain.加上
@TableName(value="sysUser")
在ID字段上加 @TableId(type=IdType.AUTO)
//这里
@TableName(value = "sys_student")
public class SysStudent implements Serializable
{
//这里@TableField(exist = false)private static final long serialVersionUID = 1L;/** 编号 */
//这里@TableId(type = IdType.AUTO)
5.修改服务层I...Service.java,加上extends IService<>
public interface ISysStudentService extends IService<SysStudent>
6.修改mapper,加上extends BaseMapper<实体类名称>
public interface SysStudentMapper extends BaseMapper<SysStudent>
7.修改服务实现层:....ServiceImpl.java , 加上extends ServiceImpl< , >
public class SysStudentServiceImpl extends ServiceImpl<SysStudentMapper, SysStudent> implements ISysStudentService
{
8.domina 中还 继承有一个BaseEntity,打开它修改,给每一个不存在的字段都加上@TableField(exist = false)
*** Entity基类* * @author ruoyi*/
public class BaseEntity implements Serializable
{private static final long serialVersionUID = 1L;/** 搜索值 */@TableField(exist = false)private String searchValue;/** 创建者 */@TableField(exist = false)private String createBy;/**创建者ID*/@TableField(exist = false)private Integer idCreatBy;/** 创建时间 */@TableField(exist = false)@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")private Date createTime;/** 更新者 */@TableField(exist = false)private String updateBy;/** 更新时间 */@TableField(exist = false)@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")private Date updateTime;/** 备注 */@TableField(exist = false)private String remark;/** 请求参数 */@TableField(exist = false)private Map<String, Object> params;
9.修改代码生成器。domain.java.vm
@TableName("${tableName}") //添加
#if($table.crud || $table.sub)
#set($Entity="BaseEntity")
#elseif($table.tree)
#set($Entity="TreeEntity")
#end
public class ${ClassName} extends ${Entity} implements Serializable //修改
{
............#else@Excel(name = "${comment}")
#end
#end
//这里
#if($column.isPk==1)@TableId
#endprivate $column.javaType $column.javaField;#end.............
10.修改mapper.java.vm
package ${packageName}.mapper;import java.util.List;
import ${packageName}.domain.${ClassName};
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
#if($table.sub)
import ${packageName}.domain.${subClassName};
#end/*** ${functionName}Mapper接口* * @author ${author}* @date ${datetime}*/
public interface ${ClassName}Mapper extends BaseMapper<${ClassName}>
...........
11.修改serviceImpl.java.vm
package ${packageName}.service.impl;import java.util.List;
#foreach ($column in $columns)
#if($column.javaField == 'createTime' || $column.javaField == 'updateTime')
import com.ruoyi.common.utils.DateUtils;
#break
#end
#end
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
#if($table.sub)
import java.util.ArrayList;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;//导包
import com.ruoyi.common.utils.StringUtils;
import org.springframework.transaction.annotation.Transactional;
import ${packageName}.domain.${subClassName};
#end
import ${packageName}.mapper.${ClassName}Mapper;
import ${packageName}.domain.${ClassName};
import ${packageName}.service.I${ClassName}Service;/*** ${functionName}Service业务层处理* * @author ${author}* @date ${datetime}*/
@Service
public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service //修改
12.修改service.java.vm
package ${packageName}.service;import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import ${packageName}.domain.${ClassName};/*** ${functionName}Service接口* * @author ${author}* @date ${datetime}*/
public interface I${ClassName}Service extends IService<${ClassName}>
{
若依前端分离版整合mybatis-plus相关推荐
- 若依(前后端分离版)整合Mybatis-puls
详细可以查看官方帮助文档 1. ruoyi-common\pom.xml 添加 Mybatis-plus 整合依赖. <!-- mybatis-plus --><dependency ...
- 若依分离版整合IJpay实现第三方支付-(微信支付篇_v2)
若依分离版整合IJpay实现第三方支付-(微信支付篇_v2) IJpay官网 https://javen205.gitee.io/ijpay/ 文章目录 若依分离版整合IJpay实现第三方支付-(微信 ...
- 【Spring从入门到出家】6 -声明式事务(完整项目版-整合Mybatis)
文章目录 11 声明式事务 11.1 建立测试环境 10.2 Spring配置声明式事务 10.3 事务转播特性 11 声明式事务 11.1 建立测试环境 我们要建立如下的项目结构 数据库spring ...
- 若依前后端分离版整合Mybatis-puls
前提:默认在git上拉完代码,可以本地启动.(因为修改过项目名称所以hy可以理解为原来的ry) 1.修改配置文件 文件名:hy-admin/src/main/resources/application ...
- 3、SpringBoot整合MyBatis注解版及配置文件版
目录 1.配置pom.xml 2.配置application.yml 3.配置DruidConfig关联yml的配置文件spring.datasource 4.创建数据库及数据库表结构 5.创建对应的 ...
- SpringBoot_整合SpringSecurity(前后端分离版)
一:初始化项目 1.创建SpringBoot项目 <!--spring boot--><dependency><groupId>org.springframewor ...
- springboot update数据_SpringBoot整合Mybatis+Druid+数据库(注解版)
运行展示 正题 Spring boot :2.1.5RELEASE :数据库(Mysql.Oracle):Mybatis:阿里云的连接池 : Druid : 步骤 1.POM依赖 <!-- My ...
- Spring Boot整合MyBatis框架(XML文件版)
1.创建数据库.数据库表并插入数据 创建数据库springboot: CREATE DATABASE springboot; 创建数据库表user: CREATE TABLE `user` (`id` ...
- SpringMVC整合mybatis(终结版)
ssm框架是目前web开发中最流行的框架之一,这个框架快捷方便,搭建完成后是很容易进行项目的开发的. 本文将使用idea作为开发工具,并使用maven进行项目管理,进行ssm框架的搭建. 1. 整合思 ...
- VUE+Spring Boot整合MyBatis实现前后端分离项目壁纸网站
目录 前言 一.项目运行 二.环境需要 三.技术栈 四.项目说明 五.后端代码 前言 每次换桌面,壁纸总是不好找,搜索图片得不到好的索引与反馈,很难找到自己喜欢的壁纸,而壁纸网站可以免去我们去寻找壁纸 ...
最新文章
- Openreach与华为/诺基亚签署G.fast协议
- 【常见问题】Can not perform this action after onSaveInstanceState
- react学习(四)之设置 css样式 篇
- 实现MVC模式的Web应用程序
- Qt 读写XML文件
- Android之jni编译出现error: jump to label ‘XXXX’ [-fpermissive]解决办法
- 人脸注册源码faceregiste
- 【渝粤教育】电大中专建设工程法规 (2)作业 题库
- 浅谈MAXIMO项目实施(转)
- 2000错误信息:MMC创建无法管理单元。
- 从程序员到项目经理(28):该死的结果导向(只看结果,不问过程到底行不行?)...
- 如何正确删除TFS上项目
- 【教程】MFC到Delphi的皮肤移植
- gitlab 报错500问题
- word 电子签名去背景方法
- 李克秋 加盟天津大学 计算机学院,天津大学
- C语言之逆序输出一个四位数
- 5. 求cosx计算公式
- 中级软件设计师简要知识点(5):网络与多媒体基础知识
- 谱归一化(Spectral Normalization)的理解
热门文章
- 【梳理】离散数学 第10章 群与环 10.2 子群与群的陪集分解
- java8分组lambda_Java 8,Lambda:在分组列表中排序并将所有组合并到列表中
- 专转本-矩阵的初等变换与线性方程组
- php经典实例读后感,读卡耐基《人性的弱点》章节之读后感
- 赢在CSDN——谈谈程序员为什么要持续学习和创作?对CSDN的期待、个人创作的规划
- 微生物组对肥胖影响的最新研究分析
- 【Scratch案例教学】Scratch九九乘法表 少儿编程Scratch创意编程案例教学
- 英飞凌 AURIX 系列单片机的HSM详解(3)——开发方法
- 约翰诺依曼在1940年发明了计算机英语,冯诺依曼元胞自动机
- 国产CPU 申威1621 异数OS基础组件理论性能测试报告