微信搜索superit|邀请体验:大数据, 数据管理、OLAP分析与可视化平台 | 赞助作者:赞助作者

Springboot整合mybatis plus快速开发后台Api

mybatis aide_941 28℃

Springboot整合mybatis plus快速开发后台Api

 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wolf_goat/article/details/81874455

先说一下效果:

构造数据表,一键生成entity,controller ,mapper ,xml ,service,serviceImpl文件

是不是很酷?下面就说一下如何使用,以及使用的时候需要注意的细节。

1.首先在pom.xml引入velocity模板引擎

  1. <dependency>
  2. <groupId>org.apache.velocity</groupId>
  3. <artifactId>velocity-engine-core</artifactId>
  4. <version>2.0</version>
  5. </dependency>

2.写一个config 文件,主要用途是mp里面有一个支持物理分页查询的方法selectPage()

  1. MybatisPlusConfig.java
  2. @EnableTransactionManagement
  3. @MapperScan(“com.cloudwalk.mapper”)
  4. @Configuration
  5. public class MybatisPlusConfig {
  6. @Bean
  7. public PerformanceInterceptor performanceInterceptor() {
  8. return new PerformanceInterceptor();
  9. }
  10. @Bean
  11. public PaginationInterceptor paginationInterceptor(){
  12. PaginationInterceptor page = new PaginationInterceptor();
  13. //设置方言类型
  14. page.setDialectType(“mysql”);
  15. return page;
  16. }
  17. }

3.编写自动生成的类,设置好文件生成的路径和生成的规则

  1. CodeGeneration.java
  2. import com.baomidou.mybatisplus.generator.AutoGenerator;
  3. import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
  4. import com.baomidou.mybatisplus.generator.config.GlobalConfig;
  5. import com.baomidou.mybatisplus.generator.config.PackageConfig;
  6. import com.baomidou.mybatisplus.generator.config.StrategyConfig;
  7. import com.baomidou.mybatisplus.generator.config.rules.DbType;
  8. import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
  9. public class CodeGeneration {
  10. public static void main(String[] args) {
  11. AutoGenerator mpg = new AutoGenerator();
  12. // 全局配置
  13. GlobalConfig gc = new GlobalConfig();
  14. gc.setOutputDir(“D:\\automl-master\\Automl\\portal\\src\\main\\java”);
  15. gc.setFileOverride(true);
  16. gc.setActiveRecord(false);// 不需要ActiveRecord特性的请改为false
  17. gc.setEnableCache(false);// XML 二级缓存
  18. gc.setBaseResultMap(true);// XML ResultMap
  19. gc.setBaseColumnList(false);// XML columList
  20. gc.setAuthor(“garve”);// 作者
  21. // 自定义文件命名,注意 %s 会自动填充表实体属性!
  22. gc.setControllerName(“%sContrroller”);
  23. gc.setServiceName(“%sService”);
  24. gc.setServiceImplName(“%sServiceImpl”);
  25. gc.setMapperName(“%sMapper”);
  26. gc.setXmlName(“%sMapper”);
  27. mpg.setGlobalConfig(gc);
  28. // 数据源配置
  29. DataSourceConfig dsc = new DataSourceConfig();
  30. dsc.setDbType(DbType.MYSQL);
  31. dsc.setDriverName(“com.mysql.jdbc.Driver”);
  32. dsc.setUsername(“automl”);
  33. dsc.setPassword(“automl!23”);
  34. dsc.setUrl(“jdbc:mysql://automl.cmx6m3lqqspg.rds.cn-northwest-1.amazonaws.com.cn:3306/automl”);
  35. mpg.setDataSource(dsc);
  36. // 策略配置
  37. StrategyConfig strategy = new StrategyConfig();
  38. strategy.setTablePrefix(new String[] { “” });// 此处可以修改为您的表前缀
  39. strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
  40. strategy.setInclude(new String[] { “sys_trial” }); // 需要生成的表
  41. strategy.setSuperServiceClass(null);
  42. strategy.setSuperServiceImplClass(null);
  43. strategy.setSuperMapperClass(null);
  44. mpg.setStrategy(strategy);
  45. // 包配置
  46. PackageConfig pc = new PackageConfig();
  47. pc.setParent(“com.cloudwalk”);
  48. pc.setController(“controller”);
  49. pc.setService(“service”);
  50. pc.setServiceImpl(“serviceImpl”);
  51. pc.setMapper(“mapper”);
  52. pc.setEntity(“entity”);
  53. pc.setXml(“xml”);
  54. mpg.setPackageInfo(pc);
  55. // 执行生成
  56. mpg.execute();
  57. }
  58. }

4.创建好数据表,运行这个main()方法就OK了。

注意点:多次运行,生成的文件名相同时,之前的文件会被覆盖,新建的表,生成文件夹则不会出现此问题。生成的mapper文件,要在class之前加@Mapper。

5.mabatis plus 的两大优点,自动生成代码,条件构造器,玩转条件构造器,几乎不用写一条sql语句,我开发了一个系统一条手写的sql语句都没有,爽歪歪。

转载请注明:SuperIT » Springboot整合mybatis plus快速开发后台Api

喜欢 (0)or分享 (0)