赞
踩
一、环境准备
安装好postgresql 略
navicat 连接postgresql 注:navicat老版本可能报错
二、整合
1.在springboot中引入我们需要的依赖以及相应版本
<?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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.5.1</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.ltb</groupId> <artifactId>postgreSQL</artifactId> <version>1.0-SNAPSHOT</version> <properties> <java.version>8</java.version> </properties> <dependencies> <!-- springboot 快速启动的一些基础依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <!--redis连接依赖--> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> </dependency> <!--postgreSQL连接依赖--> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <scope>runtime</scope> </dependency> <!-- web层--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- 集成redis依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <!-- java 自动生成set get增强工具 --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <!-- 单元测试 一般前后端分离,后端接口, 后端业务逻辑复杂 (调用很多个业务场景的方法) 每个方法有自己的业务逻辑 , 每个方法都可以自己拿测试数据 test --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- MyBatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.1</version> </dependency> <!--代码生成器引入包--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.4.1</version> </dependency> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.2</version> </dependency> <!-- jwt --> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.1</version> </dependency> <!--hutool 工具类引用 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.8.10</version> </dependency> <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.9.6</version> </dependency> <!-- 添加校验注解 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <!-- swagger依赖 --> <!-- <dependency>--> <!-- <groupId>com.github.xiaoymin</groupId>--> <!-- <artifactId>knife4j-spring-boot-starter</artifactId>--> <!-- <version>3.0.3</version>--> <!-- </dependency>--> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <version>1.10.0</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>11</source><target>11</target></configuration></plugin> </plugins> </build> <!-- 打包成jar包 --> <packaging>jar</packaging> </project>
2、yml配置
- spring:
- datasource:
- driver-class-name: org.postgresql.Driver
- url: jdbc:postgresql://localhost:5432/test
- username: postgres
- password: Ll123456.
- jpa:
- hibernate:
- ddl-auto: update
- properties:
- hibernate:
- temp:
- use_jdbc_metadata_defaults: false
- server:
- port: 8080
- mybatis-plus:
- configuration:
- log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
- global-config:
- db-config:
- logic-delete-field: flag # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
- logic-delete-value: 1 # 逻辑已删除值(默认为 1)
- logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
3.代码生成器
更改配置信息(注释中有)
- public class CodeGenerate {
- public static void main(String[] args) {
-
-
-
- // 1、创建代码生成器
- AutoGenerator mpg = new AutoGenerator();
-
- // 2、全局配置
- GlobalConfig gc = new GlobalConfig();
- String projectPath = "E:\\idea\\postgreSQL"; // 填写代码生成的目录(需要修改)
- gc.setOutputDir(projectPath + "/src/main/java"); // 拼接出代码最终输出的目录
-
- gc.setAuthor("ltb"); // 配置开发者信息(可选)(需要修改)
- gc.setOpen(false); //生成后是否打开资源管理器
- gc.setFileOverride(false); //重新生成时文件是否覆盖
- gc.setServiceName("%sService"); //去掉Service接口的首字母I
- gc.setIdType(IdType.ID_WORKER_STR); //主键策略
- gc.setDateType(DateType.ONLY_DATE);//定义生成的实体类中日期类型
- gc.setSwagger2(false); // 实体属性 Swagger2 注解,添加 Swagger 依赖,开启 Swagger2 模式(可选)
-
- mpg.setGlobalConfig(gc);
-
- // 3、数据源配置
- DataSourceConfig dsc = new DataSourceConfig();
- dsc.setUrl("jdbc:postgresql://localhost:5432/test"); // 配置数据库 url 地址(需要修改)
- dsc.setDriverName("org.postgresql.Driver"); // 配置数据库驱动
- //dsc.setSchemaName("test"); //默认指定public(可选)(需要修改)
- dsc.setUsername("postgres"); // 配置数据库连接用户名(需要修改)
- dsc.setPassword("Ll123456."); // 配置数据库连接密码(需要修改)
- dsc.setDbType(DbType.POSTGRE_SQL);
- mpg.setDataSource(dsc);
-
- // 4、包配置
- PackageConfig pc = new PackageConfig();
- pc.setModuleName(""); //模块名
- pc.setParent("com.ltb");
-
- pc.setController("controller");
- pc.setEntity("entity");
- pc.setService("service");
- pc.setMapper("mapper");
- mpg.setPackageInfo(pc);
-
- // 5、策略配置
- StrategyConfig strategy = new StrategyConfig();
- strategy.setInclude("user"); //指定表名(可以同时操作多个表,使用 , 隔开)(需要修改)
-
- strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略
- strategy.setTablePrefix(pc.getModuleName() + "_"); //生成实体时去掉表前缀
- strategy.setColumnNaming(NamingStrategy.underline_to_camel);//数据库表字段映射到实体的命名策略
- strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作
- strategy.setRestControllerStyle(true); //restful api风格控制器
- strategy.setControllerMappingHyphenStyle(true); //url中驼峰转连字符
-
- mpg.setStrategy(strategy);
-
- // 6、执行
- mpg.execute();
-
- }
- }
用代码生成器生成代码后,即可进行增删改查(略)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。