generator:存放代码生成器
二、POM文件配置 2.1 父POMservice:demo代码
2.2 generator的pom4.0.0 org.springframework.boot spring-boot-starter-parent2.5.7 com.xyp mybatis-plus-demo0.0.1-SNAPSHOT mybatis-plus-demo mybatis-plus-demo pom generator service 1.8 3.4.3.4 3.5.1 2.5.7 1.18.22 2.3.31 2.7.0 org.springframework.boot spring-boot-starter-jdbc${spring.version} org.springframework.boot spring-boot-starter-web${spring.version} mysql mysql-connector-java${mysql.version} runtime com.baomidou mybatis-plus-boot-starter${mybatis-plus.version} com.baomidou mybatis-plus-generator${generator.version} org.freemarker freemarker${freemarker.version} io.springfox springfox-swagger2${swagger.version} io.springfox springfox-swagger-ui${swagger.version} org.springframework.boot spring-boot-devtoolsruntime true ${spring.version} org.projectlombok lomboktrue ${lombok.version} org.springframework.boot spring-boot-starter-testtest ${spring.version} org.springframework.boot spring-boot-maven-pluginorg.projectlombok lombokspring-milestones Spring Milestones https://repo.spring.io/milestone false spring-snapshots Spring Snapshots https://repo.spring.io/snapshot false spring-milestones Spring Milestones https://repo.spring.io/milestone false spring-snapshots Spring Snapshots https://repo.spring.io/snapshot false
2.3 service的pom4.0.0 com.xyp mybatis-plus-demo0.0.1-SNAPSHOT com.xyp generator0.0.1-SNAPSHOT generator generator 1.8 org.springframework.boot spring-boot-starter-jdbcmysql mysql-connector-javaruntime com.baomidou mybatis-plus-generatororg.freemarker freemarkerorg.springframework.boot spring-boot-starter-testtest org.springframework.boot spring-boot-maven-plugin
三、新建数据库及表4.0.0 com.xyp mybatis-plus-demo0.0.1-SNAPSHOT com.xyp service0.0.1-SNAPSHOT service service 1.8 org.springframework.boot spring-boot-starter-jdbc${spring.version} org.springframework.boot spring-boot-starter-web${spring.version} mysql mysql-connector-java${mysql.version} runtime com.baomidou mybatis-plus-boot-starter${mybatis-plus.version} io.springfox springfox-swagger2io.springfox springfox-swagger-uiorg.springframework.boot spring-boot-devtoolsruntime true ${spring.version} org.projectlombok lomboktrue ${lombok.version} org.springframework.boot spring-boot-starter-testtest ${spring.version} org.springframework.boot spring-boot-maven-plugin
创建一个demo数据库,创建一个p_user表
四、代码生成器package com.xyp.generator; 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.engine.FreemarkerTemplateEngine; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Generator { public static void main(String[] args) { List五、在service的application.yml中配置数据库连接信息tables = new ArrayList<>(); tables.add("p_user"); FastAutoGenerator.create("jdbc:mysql://localhost:3306/demo", "root", "root") .globalConfig(builder -> { builder.author("XYP") .outputDir(System.getProperty("user.dir") + "\service\src\main\java") .enableSwagger() .commentDate("yyyy-MM-dd") .fileOverride(); }) .packageConfig(builder -> { builder.parent("com.xyp") .moduleName("service") .entity("entity") .service("service") .serviceImpl("serviceImpl") .controller("controller") .mapper("mapper") .xml("mapper") .pathInfo(Collections.singletonMap(OutputFile.mapperXml, System.getProperty("user.dir") + "\service\src\main\resources\mapper")); }) .strategyConfig(builder -> { builder.addInclude(tables) .addTablePrefix("p_") .serviceBuilder() .formatServiceFileName("%sService") .formatServiceImplFileName("%sServiceImpl") .entityBuilder() .enableLombok() .logicDeleteColumnName("deleted") .enableTableFieldAnnotation() .controllerBuilder() .formatFileName("%sController") .enableRestStyle() .mapperBuilder() .superClass(baseMapper.class) .formatMapperFileName("%sMapper") .enableMapperAnnotation() .formatXmlFileName("%sMapper"); }) .templateEngine(new FreemarkerTemplateEngine()) .execute(); } }
server: port: 80 spring: datasource: url: jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: root driver-class-name: com.mysql.cj.jdbc.Driver logging: level: root: info六、在生成的controller暴露查询所有user的接口
package com.xyp.service.controller; import com.xyp.service.entity.User; import com.xyp.service.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController @RequestMapping("/service/user") public class UserController { @Autowired private UserService userService; @GetMapping("/get") public List七、在postman中进行测试get(){ List users = userService.list(); return users; } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)