码迷,mamicode.com
首页 > 编程语言 > 详细

spring boot mybatis逆向工程

时间:2021-01-12 11:06:33      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:keyword   主键   not   %s   localhost   glob   img   自定义输出   control   

创建SpringBoot项目

创建一个普通的SpringBoot项目,然后引入依赖,既然要跟数据库打交道,connector肯定不能少

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.18</version>
</dependency>

 

另外要使用mybatis-plus,当然也要引入该starter

<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.1</version>
</dependency>

 

 

为了方便起见,这里引入Lombok

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
</dependency>

然后编写一个类,直接执行即可!

 

class AutoCode public static void main(String[] args// 1、全局配置 GlobalConfig globalConfig new GlobalConfig();//构建全局配置对象 String projectPath = System.getProperty("user.dir");// 获取当前用户的目录 globalConfig.setOutputDir(projectPath "/mybatis-plus-01-start/src/main/java")// 输出文件路径 .setAuthor("微信搜一搜:贺贺学编程")// 设置作者名字 .setOpen(false)// 是否打开资源管理器 .setFileOverride(true)// 是否覆盖原来生成的 .setIdType(IdType.AUTO)// 主键策略 .setBaseResultMap(true)// 生成resultMap .setBaseColumnList(true)// XML中生成基础列 .setServiceName("%sService");// 生成的service接口名字首字母是否为I,这样设置就没有I // 2、数据源配置 DataSourceConfig dataSourceConfig new DataSourceConfig();// 创建数据源配置 dataSourceConfig .setUrl("jdbc:mysql://127.0.0.1:3306/mybatis_plus?userSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC".setDriverName("com.mysql.cj.jdbc.Driver".setUsername("root")                 .setPassword("root".setDbType(DbType.MYSQL)// 3、包配置 PackageConfig packageConfig new PackageConfig(); packageConfig .setParent("com.hzy".setEntity("entity".setController("controller".setService("service".setMapper("mapper");// 4、策略配置 StrategyConfig strategyConfig new StrategyConfig(); strategyConfig .setCapitalMode(true)// 开启全局大写命名 .setInclude("user")// 设置要映射的表 .setNaming(NamingStrategy.underline_to_camel)// 下划线到驼峰的命名方式.setColumnNaming(NamingStrategy.underline_to_camel)// 下划线到驼峰的命名方式 .setEntityLombokModel(false)// 是否使用lombok .setRestControllerStyle(true)// 是否开启rest风格 .setControllerMappingHyphenStyle(true);// localhost:8080/hello_a_2 // 5、自定义配置(配置输出xml文件到resources下) InjectionConfig cfg new InjectionConfig(@Override public void initMap(// to do nothing }; List<FileOutConfig> focList new ArrayList<>(); String templatePath "/templates/mapper.xml.vm"// 自定义配置会被优先输出 focList.add(new FileOutConfig(templatePath@Override public String outputFile(TableInfo tableInfo// 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!! return projectPath "/mybatis-plus-01-start/src/main/resources/mapper/" + tableInfo.getEntityName("Mapper" + StringPool.DOT_XML}); cfg.setFileOutConfigList(focList)// 6、整合配置 AutoGenerator autoGenerator new AutoGenerator();// 构建代码生自动成器对象 autoGenerator .setGlobalConfig(globalConfig)// 将全局配置放到代码生成器对象中 .setDataSource(dataSourceConfig)// 将数据源配置放到代码生成器对象中 .setPackageInfo(packageConfig)// 将包配置放到代码生成器对象中 .setStrategy(strategyConfig)// 将策略配置放到代码生成器对象中 .setCfg(cfg)// 将自定义配置放到代码生成器对象中 .execute();// 执行! }

 

执行结果如下

技术图片
代码中的注释比较多,我就不多说了,如果有什么问题可以进行私信~

spring boot mybatis逆向工程

标签:keyword   主键   not   %s   localhost   glob   img   自定义输出   control   

原文地址:https://www.cnblogs.com/JpfBlog66/p/14257926.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!