iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >怎么将springcloud+mybatis项目升级为mybatis-plus
  • 275
分享到

怎么将springcloud+mybatis项目升级为mybatis-plus

2023-06-08 01:06:55 275人浏览 独家记忆
摘要

这篇文章主要讲解了“怎么将SpringCloud+mybatis项目升级为mybatis-plus”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么将springcloud+mybatis项

这篇文章主要讲解了“怎么将SpringCloud+mybatis项目升级为mybatis-plus”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么将springcloud+mybatis项目升级为mybatis-plus”吧!

已有的sprinGCloud+mybatis项目升级为mybatis-plus

项目模块目录

怎么将springcloud+mybatis项目升级为mybatis-plus

怎么将springcloud+mybatis项目升级为mybatis-plus

将mybatis依赖替换为mybatis-plus

怎么将springcloud+mybatis项目升级为mybatis-plus

修改配置文件

怎么将springcloud+mybatis项目升级为mybatis-plus

实体类如果与数据库不同名需要加上@TableName

@Data@TableName("project_base")public class ProjectBase { @TableId(value = "id", type = IdType.UUID)//id看具体项目要求如果是后台生成则不需要type属性,如果不是后台生成不管是自增还是唯一键还是填入都需type属性  private String id; private String prjid;  private String ccode;  private String cname;  private String orgbuild;  @TableField(fill = FieldFill.INSERT_UPDATE)、//自动填充时间需要一个继承MetaObjectHandler的类,下一个  private Date createtime;  @TableField(fill = FieldFill.UPDATE)  private Date updatetime;  @TableLogic//需要配置文件开启逻辑删除  private Boolean del;  @Version//版本字段数据库不是一定为version只需要在版本字段上加上注解就可以  private Integer version;
package com.itpm.server.Handler;import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;import lombok.extern.slf4j.Slf4j;import org.apache.ibatis.reflection.MetaObject;import org.springframework.stereotype.Component;import java.util.Date;@Component@Slf4jpublic class MyMateHandler implements MetaObjectHandler {  @Override  public void insertFill(MetaObject metaObject) {    this.setFieldValByName("createtime",new Date(),metaObject);    this.setFieldValByName("updatetime",new Date(),metaObject);  }  @Override  public void updateFill(MetaObject metaObject) {    this.setFieldValByName("updatatime",new Date(),metaObject);  }}

继承BaseMapper

原有接口可以不变,也可以把同名的接口名改了,比如plus的insert和原有的insert同名

package com.itpm.server.mapper.project;import com.baomidou.mybatisplus.core.mapper.BaseMapper;import com.itpm.server.domain.project.ProjectBase;import com.itpm.server.domain.project.ProjectBaseExample;import com.itpm.server.dto.project.ProjectBaseDto;import org.apache.ibatis.annotations.Param;import java.util.List;import java.util.Map;public interface ProjectBaseMapper extends BaseMapper<ProjectBase> {  long countByExample(ProjectBaseExample example);  int deleteByExample(ProjectBaseExample example);  int deleteByPrimaryKey(String id);  int insertlist(List<ProjectBase> list);  int insert(ProjectBase record);  int insertSelective(ProjectBase record);  List<ProjectBaseDto> selectByExample(ProjectBaseExample example);  ProjectBaseDto selectByPrimaryKey(String id);  int updateByExampleSelective(@Param("record") ProjectBase record, @Param("example") ProjectBaseExample example);  int updateByExample(@Param("record") ProjectBase record, @Param("example") ProjectBaseExample example);  int updateByPrimaryKeySelective(ProjectBase record);  int updateByPrimaryKey(ProjectBase record);  ProjectBaseDto selectByPrjid(Map map);  List<ProjectBaseDto> selectByprojectoverview(String prjid);  List<ProjectBaseDto> selectProjectByExample(ProjectBaseExample example);  List<ProjectBaseDto> selectProjectByparams(@Param("record") Map record);}

Service层

service层可以继承IService。如果想都自己写不继承也可以

代码生成器

与之前的mybatis代码生成器不冲突,可以选择也可以一起用
我的要生成在公共模块server下

 <dependency>        <groupId>com.baomidou</groupId>        <artifactId>mybatis-plus-generator</artifactId>        <version>3.0.6</version>      </dependency> <dependency>        <groupId>org.freemarker</groupId>        <artifactId>freemarker</artifactId>        <version>2.3.29</version>      </dependency>

```默认的是freemaker模板可以用其他的,需要导入其他依赖并且代码设置如下,当然可以做成一个util方便,mapper.xml默认生成在mapper层下xml包下,如果需要在resouce下生成需要自定义输出位置

package com.itpm.generator.server;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.annotation.FieldFill;import com.baomidou.mybatisplus.annotation.IdType;import com.baomidou.mybatisplus.core.toolkit.StringPool;import com.baomidou.mybatisplus.generator.AutoGenerator;import com.baomidou.mybatisplus.generator.InjectionConfig;import com.baomidou.mybatisplus.generator.config.*;import com.baomidou.mybatisplus.generator.config.po.TableFill;import com.baomidou.mybatisplus.generator.config.po.TableInfo;import com.baomidou.mybatisplus.generator.config.rules.DateType;import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;import java.io.File;import java.util.ArrayList;import java.util.List;public class ProjectKing {  public static void main(String[] args) {    //需要构建一个代码自动生成器对象    AutoGenerator autoGenerator = new AutoGenerator();    //配置策略    //1.全局配置    GlobalConfig globalConfig = new GlobalConfig();    File file = new File("server");    String path = file.getAbsolutePath();//    String property = System.getProperty("user.dir");    globalConfig.setOutputDir(path + "/src/main/java");    globalConfig.setAuthor("蒋磊");    globalConfig.setOpen(false);    globalConfig.setBaseResultMap(true);    globalConfig.setBaseColumnList(true);    globalConfig.setFileOverride(false);//是否覆盖    globalConfig.setServiceName("%sService");//去service的i前缀    globalConfig.setIdType(IdType.UUID);    globalConfig.setDateType(DateType.ONLY_DATE);    globalConfig.setswagger2(true);    autoGenerator.setGlobalConfig(globalConfig);    //2设置数据源    DataSourceConfig dataSourceConfig = new DataSourceConfig();    dataSourceConfig.setUrl("jdbc:mysql://itpm.itycu.com/itpm?characterEncoding=UTF8&autoReconnect=true&&allowMultiQueries=true");    dataSourceConfig.setDriverName("com.Mysql.jdbc.Driver");    dataSourceConfig.setUsername("root");    dataSourceConfig.setPassword("Itycu.8594");    dataSourceConfig.setDbType(DbType.mysql);    autoGenerator.setDataSource(dataSourceConfig);    //包的配置    PackageConfig packageConfig = new PackageConfig();    packageConfig.setModuleName("server");    String a="project";    packageConfig.setParent("com.itpm");//    packageConfig.setEntity("entity");//    packageConfig.setMapper("mapper");//    packageConfig.setService("service");//    packageConfig.setController("controller");    packageConfig.setEntity("domain."+a);    packageConfig.setMapper("mapper."+a);    packageConfig.setService("service."+a);    packageConfig.setServiceImpl("service."+a+".impl");    packageConfig.setController("controller."+a);   // 自定义配置    InjectionConfig cfg = new InjectionConfig() {      @Override      public void initMap() {        // to do nothing      }    };    // 模板引擎 freemarker    String templatePath = "/templates/mapper.xml.ftl";    // 模板引擎 velocity    // String templatePath = "/templates/mapper.xml.vm";    // 自定义输出配置    List<FileOutConfig> focList = new ArrayList<>();    // 自定义配置会被优先输出    focList.add(new FileOutConfig(templatePath) {      @Override      public String outputFile(TableInfo tableInfo) {        // 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!!        return path + "/src/main/resources/mapper/" + a            + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML;      }    });        cfg.setFileOutConfigList(focList);    autoGenerator.setCfg(cfg);    templateConfig.setXml(null);    autoGenerator.setTemplate(templateConfig);    autoGenerator.setPackageInfo(packageConfig);    //4策略配置    StrategyConfig strategyConfig = new StrategyConfig();    strategyConfig.setNaming(NamingStrategy.underline_to_camel);    strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);    ArrayList<String> objects = new ArrayList<>();//    objects.add("etest");    objects.add("rtest");    strategyConfig.setInclude(objects.toArray(new String[objects.size()]));//设置要映射的表名//    strategyConfig.setSuperEntityClass("");    strategyConfig.setEntityLombokModel(true);//自动lombok    strategyConfig.setRestControllerStyle(true);    strategyConfig.setLogicDeleteFieldName("deletedd");//逻辑删除字段    //自动填充配置    TableFill createtime = new TableFill("create_time", FieldFill.INSERT);    TableFill updatetime = new TableFill("update_time", FieldFill.UPDATE);    ArrayList<TableFill> tableFills = new ArrayList<>();    strategyConfig.setTableFillList(tableFills);    //乐观    strategyConfig.setVersionFieldName("berv");    strategyConfig.setRestControllerStyle(true);    strategyConfig.setControllerMappingHyphenStyle(true);//localhost:8080/hello_id_2    autoGenerator.setStrategy(strategyConfig);    autoGenerator.setTemplateEngine(new FreemarkerTemplateEngine());    //执行    autoGenerator.execute(); }}

感谢各位的阅读,以上就是“怎么将springcloud+mybatis项目升级为mybatis-plus”的内容了,经过本文的学习后,相信大家对怎么将springcloud+mybatis项目升级为mybatis-plus这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 怎么将springcloud+mybatis项目升级为mybatis-plus

本文链接: http://www.lsjlt.com/news/250884.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么将springcloud+mybatis项目升级为mybatis-plus
    这篇文章主要讲解了“怎么将springcloud+mybatis项目升级为mybatis-plus”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么将springcloud+mybatis项...
    99+
    2023-06-08
  • 已有的springcloud+mybatis项目升级为mybatis-plus的方法
    已有的springcloud+mybatis项目升级为mybatis-plus 项目模块目录 将mybatis依赖替换为mybatis-plus 修改配置文件 实体类如果与数...
    99+
    2024-04-02
  • SpringBoot项目将mybatis升级为mybatis-plus的方法
    最近做的项目是用的开源的一个项目改造得来的,而且项目是19年就已经停止维护了,项目的年龄比我工作经验还长,而且我们要在原来的接口上进行改动,但为了兼容前端,所以很多接口改起来很麻烦,...
    99+
    2023-01-09
    mybatis升级为mybatis-plus
  • 若依mybatis升级为mybatis-plus
    一、添加mybatis-plus依赖、删除mybatis依赖,我用的是ruoyi 3.8.5,主pom里面已经没有了mybatis的依赖,如果有的话注释一下 这里添加mybatisplus依赖 ...
    99+
    2023-09-30
    mybatis java mysql Powered by 金山文档
  • 怎么将.NET Framework项目升级为.NET 6
    本篇内容主要讲解“怎么将.NET Framework项目升级为.NET 6”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么将.NET Framework项目升级为...
    99+
    2023-06-29
  • springBoot集成mybatis转换为mybatis-plus怎么实现
    这篇文章主要介绍“springBoot集成mybatis转换为mybatis-plus怎么实现”,在日常操作中,相信很多人在springBoot集成mybatis转换为mybatis-plus怎么实现问题上存在疑惑,小编查阅了各式资料,整理...
    99+
    2023-06-21
  • 将Angular单项目升级为多项目的全过程
    目录前言开发环境生成新工程移动web项目angular.json公共模块总结前言 有时候在开发的过程中发现一个Angular项目不太够用,两个独立的项目又不太好复用。比如当前我们需要...
    99+
    2024-04-02
  • 如何将Asp.NetCore3.1开源项目升级为.Net6.0
    小编给大家分享一下如何将Asp.NetCore3.1开源项目升级为.Net6.0,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!概述自从.Net6.0出来后,一直想...
    99+
    2023-06-22
  • 使用.NET升级助手将.NET Framework项目升级为.NET 6
    目录概述环境准备.NET Portability Analyzer安装和使用升级助手介绍和安装项目升级打开项目概述 .NET6 正式版本已经发布有一阵子了,今天我就体验一下如何将.N...
    99+
    2024-04-02
  • 怎么升级VB6.0项目
    这篇文章主要讲解了“怎么升级VB6.0项目”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么升级VB6.0项目”吧!VB6.0项目升级如果你用升级向导 (Upgrade Wizard) 把 ...
    99+
    2023-06-17
  • 利用mybatis怎么将查询字段为null的值设置为0
    这期内容当中小编将会给大家带来有关利用mybatis怎么将查询字段为null的值设置为0,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。自动生成的mybatis mapper文件长这样<sql&nbs...
    99+
    2023-06-06
  • 怎么将自由风格项目转换为管道项目CI/CD
    这篇文章主要介绍“怎么将自由风格项目转换为管道项目CI/CD”,在日常操作中,相信很多人在怎么将自由风格项目转换为管道项目CI/CD问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • android studio 3.0 升级项目遇到问题怎么办
    这篇文章主要介绍android studio 3.0 升级项目遇到问题怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Android Studio从3.0版本新增了许多功能,当然首当其冲就是从3.0版本新增了对 ...
    99+
    2023-05-30
    android studio
  • 怎么将java或javaweb项目打包为jar包或war包
    这篇文章主要介绍“怎么将java或javaweb项目打包为jar包或war包”,在日常操作中,相信很多人在怎么将java或javaweb项目打包为jar包或war包问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答...
    99+
    2023-07-02
  • Angular项目中怎么将 .css 文件修改为 .scss 文件
    本篇内容主要讲解“Angular项目中怎么将 .css 文件修改为 .scss 文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Angular项目中怎么将 ....
    99+
    2024-04-02
  • 怎么用pkg将Node.js项目打包为可执行文件
    这篇“怎么用pkg将Node.js项目打包为可执行文件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用pkg将Node....
    99+
    2023-07-04
  • 怎么使用mybatis-xmlreload实现修改xml文件再也不用重启项目
    今天小编给大家分享一下怎么使用mybatis-xmlreload实现修改xml文件再也不用重启项目的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我...
    99+
    2023-07-05
  • java项目中怎么将数据结构转换为单链表
    java项目中怎么将数据结构转换为单链表?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。   单链表实现链表的打印及元素删除操作,链表的实现主要是next...
    99+
    2023-05-31
    java 数据结构 单链表
  • 怎么将github上库名称更改为与项目名称一样
    本篇内容主要讲解“怎么将github上库名称更改为与项目名称一样”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么将github上库名称更改为与项目名称一样”吧!第一步:进入你的Github账户...
    99+
    2023-07-05
  • k8s服务springboot项目应用升级时出现502错误怎么解决
    今天小编给大家分享一下k8s服务springboot项目应用升级时出现502错误怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作