首先引入maven依赖:这是整合mybatisplus时,进行逆向工程时候需要引入的依赖

  1. <!--mybaitsplus start-->
  2. <dependency>
  3. <groupId>com.baomidou</groupId>
  4. <artifactId>mybatis-plus-boot-starter</artifactId>
  5. <version>2.3</version>
  6. </dependency>
  7. <dependency>
  8. <groupId>org.apache.velocity</groupId>
  9. <artifactId>velocity-engine-core</artifactId>
  10. <version>2.0</version>
  11. <scope>test</scope>
  12. </dependency>
  13. <dependency>
  14. <groupId>com.alibaba</groupId>
  15. <artifactId>druid-spring-boot-starter</artifactId>
  16. <version>1.1.10</version>
  17. </dependency>
  18. <dependency>
  19. <groupId>mysql</groupId>
  20. <artifactId>mysql-connector-java</artifactId>
  21. <version>5.1.16</version>
  22. </dependency>
  23. <!--mybaitsplus end-->
  1. <!-- lombok start-->
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.8</version>
    </dependency>
    <!-- lombok end-->

第二步:进行配置application.yml文件

  1. spring:
  2. datasource:
  3. type: com.alibaba.druid.pool.DruidDataSource
  4. driver-class-name: com.mysql.jdbc.Driver
  5. url: jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
  6. username: username
  7. password: password
  8. druid:
  9. # 初始化大小,最小,最大
  10. initial-size: 5
  11. min-idle: 5
  12. maxActive: 20
  13. # 配置获取连接等待超时的时间
  14. maxWait: 60000
  15. # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
  16. timeBetweenEvictionRunsMillis: 60000
  17. # 配置一个连接在池中最小生存的时间,单位是毫秒
  18. minEvictableIdleTimeMillis: 300000
  19. validationQuery: SELECT 1 FROM DUAL
  20. testWhileIdle: true
  21. testOnBorrow: false
  22. testOnReturn: false
  23. # 打开PSCache,并且指定每个连接上PSCache的大小
  24. poolPreparedStatements: true
  25. maxPoolPreparedStatementPerConnectionSize: 20
  26. # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
  27. filters: stat,wall
  28. # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
  29. connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
  30. # 配置DruidStatFilter
  31. web-stat-filter:
  32. enabled: true
  33. url-pattern: "/*"
  34. exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
  35. # 配置DruidStatViewServlet
  36. stat-view-servlet:
  37. url-pattern: "/druid/*"
  38. # IP白名单(没有配置或者为空,则允许所有访问)
  39. allow: 127.0.0.1,192.168.163.1
  40. # IP黑名单 (存在共同时,deny优先于allow)
  41. deny: 192.168.1.73
  42. # 禁用HTML页面上的“Reset All”功能
  43. reset-enable: false
  44. # 登录名
  45. login-username: admin
  46. # 登录密码
  47. login-password: 123456
  48. mybatis-plus:
  49. mapper-locations: classpath:/com/example/demo/mapper/*/*.xml
  50. typeAliasesPackage: com.example.demo.entity
  51. global-config:
  52. id-type: 2
  53. field-strategy: 2
  54. db-column-underline: true
  55. refresh-mapper: true
  56. configuration:
  57. map-underscore-to-camel-case: true
  58. cache-enabled: false
  59. server:
  60. port: 8082

第三步:配置生成代码的类和分页插件配置类:

  1. package com.qingmu.springboot.common.Generator;
  2.  
  3. import com.baomidou.mybatisplus.generator.AutoGenerator;
  4. import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
  5. import com.baomidou.mybatisplus.generator.config.GlobalConfig;
  6. import com.baomidou.mybatisplus.generator.config.PackageConfig;
  7. import com.baomidou.mybatisplus.generator.config.StrategyConfig;
  8. import com.baomidou.mybatisplus.generator.config.rules.DbType;
  9. import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
  10.  
  11. public class CodeGenerator {
  12.  
  13. public static final String DB_URL = "jdbc:mysql://192.168.2.48:3306/order_system?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true";
  14. public static final String USER_NAME = "root";
  15. public static final String PASSWORD = "root";
  16. public static final String DRIVER = "com.mysql.jdbc.Driver";
  17. public static final String AUTHOR = "qingmu";
  18. //生成的文件输出到哪个目录
  19. public static final String OUTPUT_FILE = "D:\\nums-project\\springboot\\src\\main\\java";
  20. //包名,会按照com/example/demo这种形式生成类
  21. public static final String PACKAGE = "com.qingmu.springboot.common";
  22. //TODO 更多配置请参考http://mp.baomidou.com/#/generate-code
  23.  
  24. public void generateByTables(boolean serviceNameStartWithI, String... tableNames) {
  25. GlobalConfig config = new GlobalConfig();
  26. DataSourceConfig dataSourceConfig = new DataSourceConfig();
  27. dataSourceConfig.setDbType(DbType.MYSQL)
  28. .setUrl(DB_URL)
  29. .setUsername(USER_NAME)
  30. .setPassword(PASSWORD)
  31. .setDriverName(DRIVER);
  32. StrategyConfig strategyConfig = new StrategyConfig();
  33. strategyConfig
  34. .setCapitalMode(true)
  35. .setEntityLombokModel(false)
  36. .setDbColumnUnderline(true)
  37. .setNaming(NamingStrategy.underline_to_camel)
  38. .setInclude(tableNames);//修改替换成你需要的表名,多个表名传数组
  39. config.setActiveRecord(false)
  40. .setAuthor(AUTHOR)
  41. .setOutputDir(OUTPUT_FILE)
  42. .setFileOverride(true);
  43. if (!serviceNameStartWithI) {
  44. config.setServiceName("%sService");
  45. }
  46. new AutoGenerator().setGlobalConfig(config)
  47. .setDataSource(dataSourceConfig)
  48. .setStrategy(strategyConfig)
  49. .setPackageInfo(
  50. new PackageConfig()
  51. .setParent(PACKAGE)
  52. .setController("controller")
  53. .setEntity("entity")
  54. ).execute();
  55. }
  56. }
  1. package com.example.demo.config;
  2. import com.baomidou.mybatisplus.plugins.PaginationInterceptor;
  3. import org.mybatis.spring.annotation.MapperScan;
  4. import org.springframework.context.annotation.Bean;
  5. import org.springframework.context.annotation.Configuration;
  6. @Configuration
  7. @MapperScan("com.example.demo.mapper")
  8. public class MybatisPlusConfig {
  9. @Bean
  10. public PaginationInterceptor paginationInterceptor() {
  11. return new PaginationInterceptor();
  12. }
  13. }

第四步:写一个Junit test类,用来生成代码

  1. @RunWith(SpringRunner.class)
  2. @SpringBootTest
  3. public class DemoApplicationTests {
  4. @Test
  5. public void contextLoads() {
  6. CodeGenerator gse = new CodeGenerator();
  7. //要给那些表生成
  8. gse.generateByTables(false,"tb_user", "tb_role","tb_permission","tb_user_role","tb_role_permission");
  9. }
  10. }

以上就是用来生成的代码

springboot+mybatisplus进行整合并且使用逆向工程的更多相关文章

  1. 使用Springboot + Gradle快速整合Mybatis-Plus

    使用Springboot + Gradle快速整合Mybatis-Plus 作者:Stanley 罗昊 [转载请注明出处和署名,谢谢!] MyBatis-Plus(简称 MP)是一个 MyBatis ...

  2. 2、SpringBoot+MybatisPlus整合-------BaseCRUD

    开发工具:STS 代码下载链接:GitHub管理代码 版本: Springboot:1.5.14.RELEASE 使用2.0以上的Springboot,会报出一些异常.欢迎知道异常原因的大牛解惑. M ...

  3. 从零开始的SpringBoot项目 ( 六 ) 整合 MybatisPlus 实现代码自动生成

    1.添加依赖 <!-- MySQL数据库 --> <dependency> <groupId>mysql</groupId> <artifactI ...

  4. SpringBoot+Mybatis-Plus整合Sharding-JDBC5.1.1实现单库分表【全网最新】

    一.前言 小编最近一直在研究关于分库分表的东西,前几天docker安装了mycat实现了分库分表,但是都在说mycat的bug很多.很多人还是倾向于shardingsphere,其实他是一个全家桶,有 ...

  5. SpringBoot+MyBatisPlus整合时提示:Invalid bound statement(not found):**.dao.UserDao.queryById

    场景 在使用SpringBoot+MyBatisPlus搭建后台启动项目时,使用EasyCode自动生成代码. 在访问后台接口时提示: Invilid bound statement (not fou ...

  6. IDEA上创建 Maven SpringBoot+mybatisplus+thymeleaf 项目

    概述 在WEB领域,Java也是在不断的探索和改进,从开始的JSP--->Struts1--->Struts2+Spring--->Spring MVC--->SpringBo ...

  7. SpringBoot&MyBatisPlus

    5. SpringBoot 学习目标: 掌握基于SpringBoot框架的程序开发步骤 熟练使用SpringBoot配置信息修改服务器配置 基于SpringBoot完成SSM整合项目开发 5.1 入门 ...

  8. SpringBoot与Mybatis整合方式01(源码分析)

    前言:入职新公司,SpringBoot和Mybatis都被封装了一次,光用而不知道原理实在受不了,于是开始恶补源码,由于刚开始比较浅,存属娱乐,大神勿喷. 就如网上的流传的SpringBoot与Myb ...

  9. Springboot security cas整合方案-实践篇

    承接前文Springboot security cas整合方案-原理篇,请在理解原理的情况下再查看实践篇 maven环境 <dependency> <groupId>org.s ...

随机推荐

  1. Visual Studio 2017 Add WSDL

    Normal way Right click Project -> Add -> Web Reference -> Advanced Intranet way download ws ...

  2. [转帖]Zookeeper

    Zookeeper https://www.cnblogs.com/zhang-qc/p/8877082.html   Zookeeper其实是一种为分布式应用所设计的高可用.高性能且一致的开源协调服 ...

  3. Word 频繁无响应

    可以参考以下方法,这是我的解决办法,不保证对你也有用. 步骤一: 在「开始 > 运行」中输入「winword /a」进入无加载项 Word: 依次进入「Word 选项 > 高级 > ...

  4. Codeforces Round #604 (Div. 2) (题解)

    A. Beautiful String (暴力) 题目链接 题目大意: 给定一个字符串,只有 \(?a\ b\ c\ ?\) ,问是否存在一种将所有的 \(?\) 替换成 \(a\ b\ c\) ,使 ...

  5. 文件和异常的练习3——python编程从入门到实践

    10-10 常见单词:访问项目Gutenberg(http://gutenberg.org/),并找一些你想分析的图书.下载这些作品的文本文件或将浏览器中的原始文本复制到文本文件中. 可以使用coun ...

  6. t100 常用公用變數

    g_enterprise 目前的企業代碼,將限制使用者所能閱讀的資料內容g_prog 目前執行的作業編號,用於變換畫面顯示資料與產生系統資訊,不可變更g_code 目前執行的程式代碼(4gl)名稱,不 ...

  7. HTML5+规范:nativeUI(管理系统原生界面)

    nativeUI管理系统原生界面,可用于弹出系统原生提示对话框窗口.时间日期选择对话框.等待对话框等. 1.方法 1.1.actionSheet: 弹出系统选择按钮框 void plus.native ...

  8. ABP 结合 MongoDB 集成依赖注入

    1.我们再ABP项目添加一个.NET Core类库  类库名自定定义, 我这里定义为 TexHong_EMWX.MongoDb 添加NuGet包. ABP mongocsharpdriver 添加 A ...

  9. EF DBFirst 实体生成命令

    dbfirst Entity生成命令行: Scaffold-DbContext "PORT=5435;DATABASE=DocumentDB;HOST=localhost;PASSWORD= ...

  10. aria2 adduri

    demo, ok import 'package:flutter/material.dart'; import 'package:permission_handler/permission_handl ...