• SpringBoot整合Mybatis-Plus


    1.pom.xml添加依赖

    <!--mysql数据库连接驱动-->
    <dependency>
       <groupId>mysql</groupId>
       <artifactId>mysql-connector-java</artifactId>
       <scope>runtime</scope>
    </dependency>
    <!-- mybatis-plus-boot-starter -->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>2.2.0</version>
    </dependency>
    <!-- 模板引擎 -->
    <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity-engine-core</artifactId>
        <version>2.0</version>
    </dependency>

    2.application.yml配置

    server:
      port: 80
    spring:
      application:
        name: springboot-mybatis-plus
      datasource:
        url: jdbc:mysql://localhost:3306/company_manage?characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8
        username: root
        password: root

    #mybatis-plus配置控制台打印完整带参数SQL语句
    logging:
      level:
        com.company.management.system: debug

    3.Mybatis-plus分页插件

    @Configuration
    public class MybatisPlusConfig {    
      @Bean   
    public PaginationInterceptor paginationInterceptor() {   PaginationInterceptor paginationInterceptor = new PaginationInterceptor();   paginationInterceptor.setDialectType("mysql");   return paginationInterceptor;   } }

     4.代码生成器

    **
     * <p>
     * 代码生成器演示
     * </p>
     */
    public class MpGenerator {
            public static void main(String[] args){
                AutoGenerator mpg = new AutoGenerator();
    
                //TODO 全局配置
                GlobalConfig gc = new GlobalConfig();
                gc.setOutputDir(System.getProperty("user.dir")+"/src/main/java");//设置输出目录
                gc.setFileOverride(true);//设置文件重写
                gc.setActiveRecord(true);//设置开启AR模式,不需要ActiveRecord特性的请改为false
                gc.setEnableCache(false);//XML二级缓存
                gc.setBaseResultMap(true);//XML ResultMap
                gc.setBaseColumnList(false);//XML columList
                gc.setAuthor("");//作者
    
                //自定义文件命名,注意%s 会自动填充表实体属性
                gc.setControllerName("%sController");
                gc.setServiceName("%sService");
                gc.setServiceImplName("%sServiceImpl");
                gc.setMapperName("%sMapper");
                gc.setXmlName("%sMapper");
                mpg.setGlobalConfig(gc);
    
                //TODO 数据源配置
                DataSourceConfig dsc = new DataSourceConfig();
                dsc.setDbType(DbType.MYSQL);
                dsc.setDriverName("com.mysql.cj.jdbc.Driver");
                dsc.setUsername("root");
                dsc.setPassword("root");
                dsc.setUrl("jdbc:mysql://localhost:3306/manage?characterEncoding=utf8&useSSL=false&serverTimezone=GMT");
                mpg.setDataSource(dsc);
    
                //TODO 策略配置
                StrategyConfig strategy = new StrategyConfig();
                strategy.setLogicDeleteFieldName("IS_DEL");//设置逻辑删除字段
                strategy.setRestControllerStyle(true);//启用rest风格
                strategy.setTablePrefix(new String[]{});//此处可以修改您的表前缀
                strategy.setNaming(NamingStrategy.underline_to_camel);//表名生成策略
                strategy.setInclude(new String[]{"manage_user","manage_roles","manage_permission","manage_menu"});//需要生成的表
                strategy.setSuperServiceClass(null);// 自定义 service 父类
                strategy.setSuperServiceImplClass(null);// 自定义 service 实现类父类
                strategy.setSuperMapperClass(null);// 自定义 mapper 父类
                mpg.setStrategy(strategy);
    
                //TODO 包配置
                PackageConfig pc = new PackageConfig();
                pc.setParent("com.company.management.system");
                pc.setController("controller");
                pc.setService("service");
                pc.setServiceImpl("service.impl");
                pc.setMapper("mapper");
                pc.setEntity("entity");
                pc.setXml("mapper");
                mpg.setPackageInfo(pc);
    
                //执行生成
                mpg.execute();
            }
    }

     5.启动类扫描mapper

    @SpringBootApplication
    @MapperScan("com.company.management.system.mapper")
    public class StartApplication {
        public static void main(String[] args) {
            SpringApplication.run(StartApplication.class, args);
        }
    }

    目录结构

  • 相关阅读:
    floating IP 原理分析
    创建 floating IP
    Why Namespace?
    虚拟 ​router 原理分析- 每天5分钟玩转 OpenStack(101)
    链接脚本使用一例2---将二进制文件 如图片、MP3音乐、词典一类的东西作为目标文件中的一个段
    linux-2.6.26内核中ARM中断实现详解(转)
    有关Cache –(1) linux list之中的Prefetc
    Linux 内核中的 GCC 特性
    对entry-common.S和call.S的部分理解1
    kernel&uboot学习笔记
  • 原文地址:https://www.cnblogs.com/angel-devil/p/11954986.html
Copyright © 2020-2023  润新知