首页 > 数据库 >postgresql逆向工程

postgresql逆向工程

时间:2024-11-14 21:57:45浏览次数:1  
标签:逆向 postgresql generator 工程 builder boot baomidou import com

package stanfordcorenlp.wang.biao.diy;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import com.baomidou.mybatisplus.generator.fill.Column;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;

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

@SuppressWarnings("all")
@Slf4j
@Data
public class MybatisPlusGenerator {
    protected static String URL = "jdbc:postgresql://127.0.0.1:5432/wangbiao";
    protected static String USERNAME = "postgres";
    protected static String PASSWORD = "123456";

    protected static DataSourceConfig.Builder DATA_SOURCE_CONFIG = new DataSourceConfig.Builder(URL, USERNAME, PASSWORD)
            .schema("quanxian");

    public static void main(String[] args) {
        FastAutoGenerator.create(DATA_SOURCE_CONFIG)
                .globalConfig(
                        (scanner/*lamdba*/, builder/*变量*/) ->
                                builder.author(scanner.apply("请输入作者名称?"))
                                        //.enableSwagger()
                                        .fileOverride()
                                        .outputDir(System.getProperty("user.dir") + "\\src\\main\\java")
                                        .commentDate("yyyy-MM-dd")
                                        .dateType(DateType.TIME_PACK)
                )
                .packageConfig((builder) ->
                        builder.parent("stanfordcorenlp.wang.biao")
                                .entity("entity")
                                .service("service")
                                .serviceImpl("service.Impl")
                                .mapper("mapper")
                                .xml("mapper.xml")
                                .pathInfo(Collections.singletonMap(OutputFile.mapperXml, System.getProperty("user.dir") + "\\src\\main\\resources\\mapper"))
                )
                .injectionConfig((builder) ->
                        builder.beforeOutputFile(
                                (a, b) -> log.warn("tableInfo: " + a.getEntityName())
                        )
                )
                .strategyConfig((scanner, builder) ->
                        builder.addInclude(getTables(scanner.apply("请输入表名,多个英文逗号分隔?所有输入 all")))
                                .addTablePrefix("tb_", "t_")
                                .entityBuilder()
                                .enableChainModel()
                                .enableLombok()
                                .enableTableFieldAnnotation()
                                .addTableFills(
                                        new Column("create_time", FieldFill.INSERT)
                                )
                                .controllerBuilder()
                                .enableRestStyle()
                                .enableHyphenStyle()
                                .build())
                .templateEngine(new FreemarkerTemplateEngine())
                .execute();
    }

    protected static List<String> getTables(String tables) {
        return "all".equals(tables) ? Collections.emptyList() : Arrays.asList(tables.split(","));
    }


}

 

 

   <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>edu.stanford.nlp</groupId>
            <artifactId>stanford-corenlp</artifactId>
            <version>4.5.2</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
        </dependency>
        <!--Mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.2</version>
        </dependency>
        <!--mybatis-plus逆向工程-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!--freemarker-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>
        <!--Velocity引擎模板-->
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity</artifactId>
            <version>1.7</version>
        </dependency>
        <!--Lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>

  

标签:逆向,postgresql,generator,工程,builder,boot,baomidou,import,com
From: https://www.cnblogs.com/wangbiaohistory/p/18546927

相关文章

  • 前端工程工具链
    为了提高整体开发效率,首先要将一些代码规范考虑在内,需要保持git仓库的代码就像是一个人写出来的。根据团队习惯,考虑后使用组合工具:eslint + stylelint + prettier + husky。eslint:对js做规则约束。强制校验stylelint:对css做规则约束prettier:代码格式化。强制格式......
  • 11.12机器学习_特征工程
    四特征工程1特征工程概念特征工程:就是对特征进行相关的处理一般使用pandas来进行数据清洗和数据处理、使用sklearn来进行特征工程特征工程是将任意数据(如文本或图像)转换为可用于机器学习的数字特征,比如:字典特征提取(特征离散化)、文本特征提取、图像特征提取。......
  • IDEA 如何手动创建spring boot工程
    步骤创建Maven工程引入依赖提供启动类一,创建maven工程newModules选择Maven起名选择骨架quickstart检查maven工程坐标一般不用改二,引入依赖坐标打开pom文件1,让当前工程继承一个副工程<parent><groupId>org.springframework.boot</groupId><artifactId>spring-......
  • 【网络工程】计算机硬件概述
    1. 计算机硬件概述1.1定义与组成计算机硬件是指组成计算机系统的物理设备,包括但不限于中央处理器(CPU)、存储器、输入设备、输出设备等。这些设备共同构成了计算机的物理基础,使得计算机能够执行各种计算任务。CPU:作为计算机的大脑,CPU负责执行程序中的指令。根据市场研究数据......
  • Grafana:监控PostgreSQL数据运维新利器
    在数据驱动的业务环境中,数据库的性能监控是确保数据流畅和系统稳定的关键。PostgreSQL,作为强大的开源关系型数据库,其性能监控尤为重要。Grafana,一个开源的数据可视化和监控平台,提供了一个直观的界面来监控和分析数据。本文将带您了解如何利用Grafana来监控PostgreSQL,让您的数据库......
  • # 体系、系统、系统思维、系统工程、需求工程、软件工程:概念及其相互关系
    一、基础概念界定1.体系的定义与特征体系是一个具有层次结构的顶层组织框架,用于规范和指导多个相互关联的系统。它通过设定规则和标准来规定各个组成部分之间的关系和互动方式,以确保系统在开发和运行中的一致性和协同性。体系的主要特征:整体性:体系关注整体的协调,而不......
  • Maven工程依赖配置
    要在项目中配置Maven私服,通常需要修改两个文件:Maven的settings.xml和项目的pom.xml。以下是具体的配置步骤:1.修改Maven的settings.xml文件settings.xml文件通常位于Maven的安装目录下的conf文件夹中。你需要在<servers>标签内添加私服的认证信息:<servers><server>......
  • idea新建工程只能选择高版本的,1.8的sdk用不了
    现象 :打开idea,File->NewProject选择springinitializr,选择jdk1.8,选择java21,点击下一步报错:ErrorSelectedverssionofJava17isnotsupportedbytheprojectSDK'1.8'.打开创建工程网址:https://start.spring.io/java只有17,21,23,确实不支持低版本的jdk了 不推荐......
  • iman——2024软件工程alpha冲刺计划
    作业所属课程软件工程实践-秋季班作业要求第三次团队作业-alpha冲刺作业目标对于团队之前的工作进行总结与思考,并给出可以改进的思路和方案以表格的形式呈现你们之间的团队分工......
  • PostgreSQL 创建相同结构的表
    我们经常会遇到这样的需求,就是我有一个表A,现在表A由于设计的时候存在一些缺陷,我现在需要创建一个相同结构的表B但是不需要表A的数据,只需要保持其原来的表设计即可。有啥快速的方法没有。下面我介绍下几种常见的方法和每种方法的缺点以及最好的方法。方法一:BEGIN;CREA......