zoukankan      html  css  js  c++  java
  • 用 Spring Boot 和 MybatisPlus 快速构建项目

    自动生成

    public class MPGenerator {
        public static void main(String[] args) {
            AutoGenerator autoGenerator = new AutoGenerator();
    
            //数据源
            DataSourceConfig dataSourceConfig = new DataSourceConfig();
            dataSourceConfig.setDbType(DbType.MYSQL);
            dataSourceConfig.setUrl("jdbc:mysql://...");
            dataSourceConfig.setUsername("...");
            dataSourceConfig.setPassword("...");
            dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
            autoGenerator.setDataSource(dataSourceConfig);
    
            //全局配置
            GlobalConfig globalConfig = new GlobalConfig();
            globalConfig.setOutputDir(System.getProperty("user.dir")+"/src/main/java");  // 输出的根目录
            globalConfig.setOpen(false);  // 生成后是否打开文件资源管理器
            globalConfig.setAuthor("...");
            globalConfig.setServiceName("%sService");  // 设置service接口名前没有‘I’
            autoGenerator.setGlobalConfig(globalConfig);
    
            //包信息
            PackageConfig packageConfig = new PackageConfig();
            packageConfig.setParent("com.example");  // 父包目录
            packageConfig.setController("controller");
            packageConfig.setService("service");
            packageConfig.setServiceImpl("service.impl");
            packageConfig.setMapper("com.example/mapper/xml");
            packageConfig.setEntity("entity");
            autoGenerator.setPackageInfo(packageConfig);
    
            //配置策略
            StrategyConfig strategyConfig = new StrategyConfig();
            strategyConfig.setEntityLombokModel(true);
            strategyConfig.setNaming(NamingStrategy.underline_to_camel);  // 将数据库中的字段的下划线转为驼峰命名
            autoGenerator.setStrategy(strategyConfig);
    
            autoGenerator.execute();
        }
    }
    

    Mapper.xml 不生效

    报错:

    Invalid bound statement (not found):...
    

    官网解决方案:

    https://baomidou.com/guide/faq.html
    

    注意,生成的Mapper.xml放在src下,如用IDEA是不会扫描此文件夹下的xml文件:

    • 在pom.xml的build下加入:

      <build>
        <resources>
            <resource>
                <!-- xml放在java目录下-->
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
      </build>
      
    • 在springboot配置文件下配置,classpath是相对于target下的classes目录:

      mybatis-plus.mapper-locations=classpath:/.../mapper/xml/*.xml
      
  • 相关阅读:
    JVM-程序编译与代码晚期(运行期)优化
    JVM-程序编译与代码早期(编译期)优化
    JVM-字节码执行引擎
    JVM-类加载机制
    JVM-字节码指令
    JVM-class文件完全解析-属性表集合
    zabbix配置邮箱报警功能
    Linux Shell 返回值之 PIPESTATUS
    SSH远程登录原理
    Zabbix监控USG6300防火墙及交换机
  • 原文地址:https://www.cnblogs.com/lucheng123/p/13615286.html
Copyright © 2011-2022 走看看