Mybatis——plus 代码生成器

MybatisPlus 给我们提供了更加强大的代码生成器

 

 # # 代码生成器的简单的对比

 

Mybatis——plus 代码生成器_第1张图片
 

MybatisPlus 给我们提供的代码生成器,不仅仅可以生成dao层,还可以生成 Service层,Controller层。

 

 # # 代码生成器的使用注意事项

Mybatis——plus 代码生成器_第2张图片

 

 # # 代码生成器的使用注意事项

 使用代码生成器的步骤

  • 我们自己提供一些配置文件

Mybatis——plus 代码生成器_第3张图片

  • 模板引擎

    MP 的代码生成器默认使用的是 Apache 的 Velocity 模板,当然也可以更换为别的模板技术,例如 freemarker。



    org.apache.velocity
    velocity-engine-core
    2.0

  • 加入 slf4j ,查看日志输出信息

    org.slf4j
    slf4j-api
    1.7.7



    org.slf4j
    slf4j-log4j12
    1.7.7
  • 生成示例代码
@Test
public void testGenerator() {
    //1. 全局配置
    GlobalConfig config = new GlobalConfig();
    //是否支持AR模式
    config.setActiveRecord(true)
        .setAuthor("weiyunhui") //作者
        .setOutputDir("D:\\workspace_my\\mp03\\src\\main\\java")  //生成路径
        .setFileOverride(true)//是否文件覆盖,如果多次
        .setServiceName("%sService") //设置生成的service接口名首字母是否为I   
        .setIdType(IdType.AUTO) //主键策略
        .setServiceName("%sService")//设置生成的service接口的名字的首字母是否为I
        .setBaseResultMap(true)
        .setBaseColumnList(true);
     //2. 数据源配置
    DataSourceConfig dsConfig = new DataSourceConfig();
    dsConfig.setDbType(DbType.MYSQL)
        .setUrl("jdbc:mysql://localhost:3306/javaEE_0228")
        .setDriverName("com.mysql.jdbc.Driver")
        .setUsername("root")
        .setPassword("1234");
    //3.策略配置
    StrategyConfig stConfig = new StrategyConfig();
    stConfig.setCapitalMode(true) // 全局大写命名
        .setDbColumnUnderline(true) //表名 字段名 是否使用下滑线命名
        .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略
        .setInclude("tbl_employee") //生成的表
        .setTablePrefix("tbl_"); // 表前缀
    //4.包名策略
    PackageConfig pkConfig = new PackageConfig();
    pkConfig.setParent("com.atguigu.mp")//父包名
        .setController("controller")
        .setEntity("beans")
        .setService("service")
        .setMapper("mapper")
        .setXml("mapper");
    //5.整合配置
   AutoGenerator ag = new AutoGenerator().setGlobalConfig(config)
        .setDataSource(dsConfig)
        .setStrategy(stConfig)
        .setPackageInfo(pkConfig);
        ag.execute();
}

 

  可以查看更加权威的官方文档给的案例

 https://mp.baomidou.com/guide/generator.html#%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B

你可能感兴趣的:(SSM框架)