代码生成器(代码生成器软件)

  本篇文章为你整理了代码生成器(代码生成器软件)的详细内容,包含有代码生成器在线 代码生成器软件 代码生成器手机版 代码生成器下载 代码生成器,希望能帮助你了解 代码生成器。

   groupId org.mybatis.generator /groupId

   artifactId mybatis-generator-maven-plugin /artifactId

   version 1.3.0 /version

   !-- 插件的依赖 --

   dependencies

   !-- 逆向工程的核心依赖 --

   dependency

   groupId org.mybatis.generator /groupId

   artifactId mybatis-generator-core /artifactId

   version 1.3.2 /version

   /dependency

   !-- 数据库连接池 --

   dependency

   groupId com.mchange /groupId

   artifactId c3p0 /artifactId

   version 0.9.2 /version

   /dependency

   !-- MySQL驱动 --

   dependency

   groupId mysql /groupId

   artifactId mysql-connector-java /artifactId

   version 5.1.8 /version

   /dependency

   /dependencies

   /plugin

   /plugins

   /build

  

 

 

  创建generatorConfig.xml配置文件,从官网中复制下来即可.其中元素标签说明卸载注释中

  

 ?xml version="1.0" encoding="UTF-8" ? 

 

   !DOCTYPE generatorConfiguration

   PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"

   "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"

   generatorConfiguration

   targetRuntime: 执行生成的逆向工程的版本

   MyBatis3Simple:生成基本的CURD(清新简洁版)

   MyBatis3:生成带条件的CURD(奢华尊享版)

   context id="DB2Tables" targetRuntime="MyBatis3"

   !-- 数据库连接信息 --

   jdbcConnection driver connectionURL="jdbc:mysql:///your_database?useUnicode=true amp;characterEncoding=utf8"

   userId="username"

   password="password" /

   !-- javaBean的生成策略 --

   javaModelGenerator targetPackage="module_name.entity" targetProject=".\src\main\java"

   property name="enableSubPackages" value="true" /

   property name="trimStrings" value="true" /

   /javaModelGenerator

   !-- SQL映射文件的生成策略 --

   sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources"

   property name="enableSubPackages" value="true" /

   /sqlMapGenerator

   !-- Mapper接口的生成策略 --

   javaClientGenerator type="XMLMAPPER" targetPackage="module_name.mapper" targetProject=".\src\main\java"

   property name="enableSubPackages" value="true" /

   /javaClientGenerator

   !-- 逆向分析的表 --

   !-- tableName设置为*号,可以对应所有的表,此时不用写domainObjectName --

   !-- domainObjectName属性指定生成出来的实体类的类名 --

   table tableName="admin" domainObjectName="Admin" /

   /context

   /generatorConfiguration

  

 

  最后在右边点击maven中插件,双击mybatis-generator:generate

  说明:上述两个配置文件都会报红,不用管尽管运行即可

  MybatisPlus Generator

  使用代码形式自动生成

  会生成从Controller层到Dao层的所有文件,其中还包括实体类

  首先添加必须的依赖

  

 dependencies 

 

   !--mybatis-plus 持久层--

   dependency

   groupId com.baomidou /groupId

   artifactId mybatis-plus-boot-starter /artifactId

   version 3.0.5 /version

   /dependency

   !-- velocity 模板引擎, Mybatis Plus 代码生成器需要 --

   dependency

   groupId org.apache.velocity /groupId

   artifactId velocity-engine-core /artifactId

   version 2.0 /version

   /dependency

   !--lombok用来简化实体类:需要安装lombok插件--

   dependency

   groupId org.projectlombok /groupId

   artifactId lombok /artifactId

   version 1.18.20 /version

   /dependency

   /dependencies

  

 

  这里是在单元测试中运行

  

public class GeneratorTest{

 

   @Test

   public void run() {

   // 1、创建代码生成器

   AutoGenerator mpg = new AutoGenerator();

   // 2、全局配置

   GlobalConfig gc = new GlobalConfig();

   String projectPath = System.getProperty("user.dir");

   // 换成绝对路径

   gc.setOutputDir("your project absolute path" + "/src/main/java");

   gc.setAuthor("xsha_h");

   gc.setOpen(false); //生成后是否打开资源管理器

   gc.setFileOverride(false); //重新生成时文件是否覆盖

   gc.setServiceName("%sService"); //去掉Service接口的首字母I

   gc.setIdType(IdType.ID_WORKER_STR); //主键策略

   gc.setDateType(DateType.ONLY_DATE);//定义生成的实体类中日期类型

   gc.setSwagger2(true);//开启Swagger2模式

   mpg.setGlobalConfig(gc);

   // 3、数据源配置

   DataSourceConfig dsc = new DataSourceConfig();

   dsc.setUrl("jdbc:mysql:///database_name?serviceTimezone=GMT%2B8");

   dsc.setDriverName("com.mysql.cj.jdbc.Driver");

   dsc.setUsername("username");

   dsc.setPassword("password");

   dsc.setDbType(DbType.MYSQL);

   mpg.setDataSource(dsc);

   // 4、包配置

   PackageConfig pc = new PackageConfig();

   // 包名 com.xsha.module_name

   pc.setParent("com.xsha");

   pc.setModuleName("module_name"); //模块名

   pc.setController("controller");

   pc.setEntity("entity");

   pc.setService("service");

   pc.setMapper("mapper");

   mpg.setPackageInfo(pc);

   // 5、策略配置

   StrategyConfig strategy = new StrategyConfig();

   // 生成表格名称对应的实体类

   strategy.setInclude("table_name1", "table_name2", "table_name3", "table_name4");

   strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略

   strategy.setTablePrefix(pc.getModuleName() + "_"); //生成实体时去掉表前缀(根据需求变化)

   strategy.setColumnNaming(NamingStrategy.underline_to_camel);//数据库表字段映射到实体的命名策略

   strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作

   strategy.setRestControllerStyle(true); //restful api风格控制器

   strategy.setControllerMappingHyphenStyle(true); //url中驼峰转连字符

   mpg.setStrategy(strategy);

  以上就是代码生成器(代码生成器软件)的详细内容,想要了解更多 代码生成器的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: