用代码生成器生成mybaitsPlus的代码

用代码生成器生成mybaitsPlus的代码

一. pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.szsxt</groupId>
    <artifactId>genecode</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.7.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.3.1</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.49</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.3.1.tmp</version>
        </dependency>
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.2</version>
        </dependency>
    </dependencies>


</project>

二.在java/src下新建类

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;

public class GeneratorClass {
   
    public static void main(String[] args) {
   
        // 代码生成器
        AutoGenerator mpg = new AutoGenerator();
        //全局配置策略
        GlobalConfig gc = new GlobalConfig();
        String path = System.getProperty("user.dir");//动态获取当前项目的路径
        System.out.println(path);
        gc.setFileOverride(false);// 是否覆盖同名文件,默认是false
        gc.setActiveRecord(true);// 不需要ActiveRecord特性的请改为false
        gc.setEnableCache(false);// XML 二级缓存
        gc.setBaseResultMap(true);// XML ResultMap
        gc.setBaseColumnList(false);// XML columList
        gc.setOutputDir(path);
        gc.setIdType(IdType.AUTO);//设置主键策略
        gc.setDateType(DateType.ONLY_DATE);//生成java.util.Date类型


        //数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql://localhost:3306/ego?useUnicode=true&useSSL=false&characterEncoding=utf8");
        // dsc.setSchemaName("public");
        dsc.setDriverName("com.mysql.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("admin");

        // 包配置
        PackageConfig pc = new PackageConfig();
        pc.setParent("com.ego")
                .setMapper("mapper")
                .setService("service")
                .setController("controller")
                .setEntity("pojo")
                .setXml("mapperxml");
        //策略配置
        StrategyConfig stConfig = new StrategyConfig();
        stConfig.setCapitalMode(true) //全局大写命名
                .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略
                .setTablePrefix("tb_")
                .setEntityLombokModel(true)//使用lombok
                .setInclude("tb_content","manager","tb_content_category","tb_item","tb_item_cat","tb_item_desc","tb_item_param","tb_item_param_item","tb_order","tb_order_item","tb_order_shipping","tb_user"); // 生成的表,多个表继续传递即可,String类型的可变参数

        //将策略配置对象集成到代码生成器中
        mpg.setGlobalConfig(gc);
        mpg.setDataSource(dsc);
        mpg.setPackageInfo(pc);
        mpg.setStrategy(stConfig);
        //执行生成
        mpg.execute();
    }
}

三.运行类,完成!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2345.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何使vmware虚拟机中的Redflag Linux操作系统能够上网?

    如何使vmware虚拟机中的Redflag Linux操作系统能够上网? 第一种情况:主机使用PPPOE拨号上网方法一:NAT方式1、先关闭虚拟机中的操作系统,回到虚拟机主界面双击主界面右上方的的“Ethernet”,弹出“NetworkAdapter”对话框,选择“NAT”2、启动虚拟机操作系统,设置IP为动态获取,即通过DHCP获得。此时虚拟机中的操作系统用的是主机的IP,主机能够上网,那么虚拟机也能。方法二:Host-only方式1

    2022年8月20日
    5
  • 寻址方式小结

    寻址方式小结最近看了下王爽著的 里面总结了 8086CPU 编程的寻址方式 nbsp nbsp 1 idata 用医保常量来表示地址 可用于直接定位一个内存单元 nbsp nbsp 2 bx 用一个变量来表示内存地址 可用于间接定位一个内存单元 nbsp nbsp 3 bx idata 用一个变量和常量表示地址 可在一个起始地址的基础上用变量间接定位一个内存单元 nbsp nbsp 4 bx si 用两个变量表示地址 nbsp nbsp 5

    2025年7月30日
    4
  • 关于Spring 的IoC和AOP的面试题,快看看你都能答上来哪些

    关于Spring 的IoC和AOP的面试题,快看看你都能答上来哪些? 博客首页:派大星⛳️ 欢迎关注 ❤️ 点赞 ? 收藏 ✏️ 留言? 本文由派大星原创编撰? 系列专栏:《迎战面试》? 本系列分享自己准备面试的过程和一些经典的面试题目录? SpringIOC? IOC是什么?? Ioc容器的初始化过程?? 基于注解的容器初始化? 依赖注入的相关注解?? 如何通过注解.

    2022年6月29日
    22
  • Mac下用conda安装tensorflow

    Mac下用conda安装tensorflow1.下载并安装Anaconda。2.通过调用以下命令创建名为 tensorflow 的conda环境:$condacreate-ntensorflowpython=3.63.通过发出以下命令激活conda环境:     $sourceactivatetensorflow4.发出以下格式的命令以在conda环境中安装Tensor…

    2022年6月17日
    100
  • SpringMVC学习—使用ajax返回Json出现乱码解决方法[通俗易懂]

    在使用ajax请求后台访问数据的数据,后台返回的数据是乱码,带??问号的乱码,之前还一直没有遇到过,在这里记录整理一下,贴出解决代码!

    2022年2月25日
    39
  • css颜色渐变样式怎么用_文本效果内置样式渐变填充

    css颜色渐变样式怎么用_文本效果内置样式渐变填充使用CSS渐变CSS渐变类型的一种特殊类型表示,由两种或多种颜色之间的渐进过渡组成。您可以选择三种类型的渐变:线性(由linear-gradient函数创建),径向(由radial-gradient()函数创建)和圆锥(由conic-gradient(en-US)函数创建)。您还可以使用repeating-linear-gradient和repeating-radial-gradient函数创建重复渐变。渐变可以在任何使用的地方使用,例如在背景中。由于渐变是动态生成

    2025年6月25日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号