1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > MybatisPlus代码生成器(新)

MybatisPlus代码生成器(新)

时间:2018-08-03 03:02:05

相关推荐

MybatisPlus代码生成器(新)

官方配置:/pages/981406/#%E6%95%B0%E6%8D%AE%E5%BA%93%E9%85%8D%E7%BD%AE-datasourceconfig

官方的说明非常详细,可以参考。

1:添加所需要的依赖

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.1</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.5.1</version></dependency><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity-engine-core</artifactId><version>2.1</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.21</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- /artifact/io.swagger/swagger-annotations --><dependency><groupId>io.swagger</groupId><artifactId>swagger-annotations</artifactId><version>1.5.22</version></dependency></dependencies>

2:写代码生成器类

@Testvoid contextLoads() {/*数据库配置*/DataSourceConfig dataSourceConfig =new DataSourceConfig.Builder("jdbc:mysql://localhost:3306/db01?useUnicode=true&characterEncoding=utf8&useSSL=false","root","123456").dbQuery(new MySqlQuery()).build();/*创建一共代码生成器对象*/AutoGenerator generator = new AutoGenerator(dataSourceConfig);String property = System.getProperty("user.dir");/*全局配置*/GlobalConfig globalConfig = new GlobalConfig.Builder().fileOverride().outputDir(property + "/src/main/java").author("冬木")//.enableKotlin().enableSwagger().dateType(DateType.TIME_PACK).commentDate("yyyy-MM-dd").build();generator.global(globalConfig);/*包配置(PackageConfig)*/PackageConfig packageConfig = new PackageConfig.Builder().parent("com.dongmu.mybatisplus").moduleName("blog").entity("pojo").service("service").serviceImpl("service.impl").mapper("mapper").xml("mapper.xml").controller("controller").other("other").pathInfo(Collections.singletonMap(OutputFile.mapperXml, "D://")).build();generator.packageInfo(packageConfig);TemplateConfig templateConfig = new TemplateConfig.Builder().disable(TemplateType.ENTITY).entity("/templates/entity.java").service("/templates/service.java").serviceImpl("/templates/serviceImpl.java").mapper("/templates/mapper.java").mapperXml("/templates/mapper.xml").controller("/templates/controller.java").build();generator.template(templateConfig);/*策略配置*/StrategyConfig strategyConfig = new StrategyConfig.Builder().enableCapitalMode().enableSkipView().disableSqlFilter()//.likeTable(new LikeTable("USER")).addInclude("user")//.addTablePrefix("t_", "c_")//.addFieldSuffix("_flag")/* .entityBuilder().controllerBuilder().mapperBuilder().serviceBuilder()*/.build();strategyConfig.entityBuilder()//.superClass(BaseEntity.class).disableSerialVersionUID().enableChainModel().enableLombok().enableRemoveIsPrefix().enableTableFieldAnnotation().enableActiveRecord().versionColumnName("version").versionPropertyName("version").logicDeleteColumnName("deleted").logicDeletePropertyName("deleted").naming(NamingStrategy.no_change).columnNaming(NamingStrategy.underline_to_camel)//.addSuperEntityColumns("id", "created_by", "created_time", "updated_by", "updated_time")//.addIgnoreColumns("age").addTableFills(new Column("create_time", FieldFill.INSERT)).addTableFills(new Property("update_time", FieldFill.INSERT_UPDATE)).idType(IdType.AUTO).formatFileName("%s").build();strategyConfig.controllerBuilder()//.superClass(BaseController.class)//.enableHyphenStyle().enableRestStyle().formatFileName("%sController").build();strategyConfig.serviceBuilder()//.superServiceClass(BaseService.class)//.superServiceImplClass(BaseServiceImpl.class).formatServiceFileName("%sService").formatServiceImplFileName("%sServiceImp").build();strategyConfig.mapperBuilder().superClass(BaseMapper.class).enableMapperAnnotation().enableBaseResultMap().enableBaseColumnList()//.cache(MyMapperCache.class).formatMapperFileName("%sDao").formatXmlFileName("%sXml").build();generator.strategy(strategyConfig);/*执行代码生成器*/generator.execute();}

执行结果:

数据库信息:

我们再测试一下swagger,要注意加入依赖,

注意报错了的话要降低springboot的版本。

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.1</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.5.1</version></dependency><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity-engine-core</artifactId><version>2.1</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.21</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--/artifact/io.swagger/swagger-annotations<dependency><groupId>io.swagger</groupId><artifactId>swagger-annotations</artifactId><version>1.5.22</version></dependency>--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.9.2</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency></dependencies>

测试成功。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。