首页 > 其他分享 >MybatisPlusGenerator 实体类 xml dao 生成工具

MybatisPlusGenerator 实体类 xml dao 生成工具

时间:2023-05-26 16:34:09浏览次数:61  
标签:xml 包名 实体类 String mapper MybatisPlusGenerator 开启 import

package com.thtf.zwdsj.gongjia.config;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.DateType;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

/**
 * @Author ggl
 * @Date 2023/5/4
 * @Version 1.0
 */
public class MybatisPlusGenerator {
    public static void main(String[] args) {

        //这里按着给的注解修改参数即可
        //手动配置数据源
        String url = "jdbc:mysql://10.10.60.119:3309/tjy-stat?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&useCursorFetch=true&allowMultiQueries=true&rewriteBatchedStatements=true";   //注意修改数据库名
        String name = "thtf";
        String password = "THTF_tjy_thtf";

        //数据库表的设置
        List<String> listTable = Arrays.asList("t_price_ppi_group_config");  //设置需要自动代码生成的表名

        //基本信息
        String author = "ggl";    //作者
        String parent = "com.thtf.zwdsj.gongjia";   //父包名
        String module = "thtf.zwdsj.gongjia";   //模块包名


        //已封装好,无需更改。可按照需求进行注释

        //1、配置数据源
        FastAutoGenerator.create(url, name, password)
                //2、全局配置
                .globalConfig(builder -> {
                    builder.author(author) // 设置作者名
                            .outputDir(System.getProperty("user.dir") + "/src/main/java")   //设置输出路径:项目的 java 目录下【System.getProperty("user.dir")意思是获取到项目所在的绝对路径】
                            .commentDate("yyyy-MM-dd hh:mm:ss")   //注释日期
                            .dateType(DateType.ONLY_DATE)   //定义生成的实体类中日期的类型 TIME_PACK=LocalDateTime;ONLY_DATE=Date;
                            .fileOverride()   //覆盖之前的文件
                            .enableSwagger();   //开启 swagger 模式
                            //.outputDir(""); //指定输出目录,一般指定到java目录
                })
                //3、包配置
                .packageConfig(builder -> {
                    builder.parent(parent) // 设置父包名
                            //.moduleName(module)   //设置模块包名
                            .entity("entity")   //pojo 实体类包名
                            .service("service") //Service 包名
                            .serviceImpl("service.impl") // ***ServiceImpl 包名
                            .mapper("mapper")   //Mapper 包名
                            .xml("mapper.xml")  //Mapper XML 包名
                            .controller("controller") //Controller 包名
                            .other("config")    //自定义包名(一般不在这里生成,而是后面编写的时候自己建包)
                            .pathInfo(Collections.singletonMap(OutputFile.mapper.xml, System.getProperty("user.dir") + "/src/main/resources/mapper"));    //配置 mapper.xml 路径信息:项目的 resources 目录下
                })
                //4、策略配置
                .strategyConfig(builder -> {
                    builder.enableCapitalMode()    //开启大写命名
                            .enableSkipView()   //创建实体类的时候跳过视图
                            .addInclude(listTable) // 设置需要生成的数据表名

                            //4.1、实体类策略配置
                            .entityBuilder().enableChainModel() //开启链式模型
                            //.disableSerialVersionUID()  //默认是开启实体类序列化,可以手动disable使它不序列化。由于项目中需要使用序列化就按照默认开启了
                            .enableTableFieldAnnotation()       // 开启生成实体时生成字段注解
                            .enableLombok() //开启 Lombok

                            //4.2、Controller策略配置
                            .controllerBuilder().enableHyphenStyle()    //开启驼峰连转字符
                            .formatFileName("%sController") //格式化 Controller 类文件名称,%s进行匹配表名,如 UserController
                            .enableRestStyle()  //开启生成 @RestController 控制器

                            //4.3、service 策略配置
                            .serviceBuilder().formatServiceFileName("%sService") //格式化 service 接口文件名称,%s进行匹配表名,如 UserService
                            .formatServiceImplFileName("%sServiceImpl") //格式化 service 实现类文件名称,%s进行匹配表名,如 UserServiceImpl

                            //4.4、Mapper策略配置
                            .mapperBuilder().superClass(BaseMapper.class)   //设置父类
                            .enableBaseResultMap()  //启用 BaseResultMap 生成
                            .enableBaseColumnList() //启用 BaseColumnList
                            .formatMapperFileName("%sMapper")   //格式化 mapper 文件名称
                            .enableMapperAnnotation()       //开启 @Mapper 注解
                            .formatXmlFileName("%sXml") //格式化Xml文件名称
                            .formatMapperFileName("%sMapper");   //格式化Mapper文件名称

                })
                //6、执行
                .execute();
    }
}

 

标签:xml,包名,实体类,String,mapper,MybatisPlusGenerator,开启,import
From: https://www.cnblogs.com/chenTo/p/17435086.html

相关文章

  • 查找xml cdata 节点并去掉 CDATA 节点标记
    内容如下<?xmlversion="1.0"encoding="UTF-8"?><transstatus><transname>C-QXZSPJ-QXZSPJ-015-1</transname><id>2ca8df47-3b2d-4d8f-8b70-be68448dd97d</id><status_desc>Finished</status......
  • FLEX实践—XML、XMLList、XMLListCollection、ArrayCollection关系转换
    在本实例中将从一个XML对象通过层层转换最终变为ArrayCollection对象  <?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">......
  • FLEX AIR实践—FLEX AIR XML Encode Bug
     这几天在用AIR程序通过WebService进行数据传输时发现了以下问题:用WebService传输‘A&B’内容到目的地,再从目的地将数据通过WebService获取到本地,结果数据变成了'A&amp;B';于是开始进行以下测试:将'A&B'替换成'A&amp;B'——>获取结果为'A&amp;amp;B'测试了其他转义字符也得到了同样......
  • FLEX实践—XML HttpService加载错误
    主应用代码:<?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" horizontalAlign="center" verticalAlign="middle" creationComplete="init......
  • FLEX实践—加载XML文件错误
        这两天在研究一个FLEX小相册,准备做一个超级简单的纯FLEX相册,没想到在读取XML文件的时候遇到了这样一个问题:    1)用FLEXBUILDER创建了一个FLEX工程    2)写了一个MXML文件,一个XML文件    3)在程序中用HTTPService和URLRequest两种方法分别读取XML文件内容 ......
  • SqlSever表结构转C#实体类
    declare@TableNamesysname='repair_plan'declare@Resultvarchar(max)='///<summary>///'+@TableName+'///</summary>publicclass'+@TableName+'{'select@Result=@Result+'///......
  • XML和javaConfig
    1. 为什么要使用 Spring Boot  11. 因为Spring, SpringMVC 需要使用的大量的配置文件 (xml文件)还需要配置各种对象,把使用的对象放入到spring容器中才能使用对象需要了解其他框架配置规则。2. SpringBoot 就相当于 不需要配置文件的Spring+SpringMVC。 常用的框架和第三......
  • XML文件批量合并成Excel表格(Python)
    importosimportxml.etree.ElementTreeasETimportpandasaspdfolder_path="C:/xxx/Desktop/2022"#替换为你的文件夹路径#获取文件夹中的所有文件file_list=os.listdir(folder_path)#创建一个空的DataFrame来存储所有XML文件的数据all_data=pd.DataFra......
  • 【SQL用法】Mybatis框架中的xml文件中经常使用的sql语句
    本文目录一、insert语句二、select查询语句三、批量添加四、与时间比较相关的项目中经常会用到的sql语句有:一、insert语句<!--保存用户信息--><insertid="save">insertintomainsite_product_message<trimprefix="("suffix=")"suffixOverrides=","......
  • 【IntelliJ IDEA】idea中的插件之一:Free Mybatis plugin跳转插件的使用(方便在Dao接口
    本文目录一、安装二、使用最近在使用一个非常好用的跳转插件,用着很顺手,效率比之前提高了很多。之前使用MyBatis框架或者是在IDEA中,发现Mapper接口和XML文件之间跳转十分的麻烦,我之前经常的操作是在Mapper接口中将接口名称复制一下,然后去查找对应的XML文件,打开后CRTL+F查找对应的xml......