Mybatis逆向工程(一个代码生成器)

mybatis逆向工程

引入pom依赖

<dependency>groupId>org.mybatis.generator</groupId>
	<artifactId>mybatis-generator-core</artifactId>
	<version>1.4.0</version>
<dependency>

MyBatis3DynamicSql 的示例配置

<!DOCTYPE generatorConfiguration PUBLIC
 "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<发电机配置>
  <context id="dsql" targetRuntime="MyBatis3DynamicSql">
    <jdbcConnection driverClass="org.hsqldb.jdbcDriver"
        connectionURL = jdbc:hsqldb:mem:aname” />
    <javaModelGenerator targetPackage="example.model" targetProject="src/main/java"/>
    <javaClientGenerator targetPackage="example.mapper" targetProject="src/main/java"/>
    <table tableName="FooTable" />
  </上下文>
</generatorConfiguration>
  1. 适当地创建并填写配置文件
  2. 将文件保存在某个方便的位置(如 \temp\generatorConfig.xml)
  3. 使用如下命令从命令行运行 MBG:
  java -jar mybatis-generator-core-xxxjar -configfile \ temp \ generatorConfig.xml -overwrite

这将告诉 MBG 使用您的配置文件运行。它还会告诉 MBG 覆盖任何现有的同名 Java 或 Kotlin 文件。如果要保存任何现有文件,请省略-overwrite参数。如果发生冲突,MBG 将使用唯一的名称(例如 MyClass.java.1)保存新生成的文件。

  1. 运行 MBG 后,您将需要创建或修改标准的 MyBatis 配置以使用您新生成的代码。有关更多信息,请参阅运行 MyBatis Generator 后的 任务页面。
  2. MyBatis3 的示例配置

<!DOCTYPE generatorConfiguration PUBLIC
 "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
 <!--context生成上下文,配置生成规则
 	targetRuntime:生成策略
 		MyBatis3Dynamicsql:默认的,会生成带动态sql的CRUD
 		MyBatis3 生成通用的查询,可以指定动态where条件
 		MyBatis3Simple只生成简单的CRLD
 	-->
  <context id="simple" targetRuntime="MyBatis3Simple">
  <!--数据源-->
    <jdbcConnection driverClass="com.mysql.cj.Driver" 
    				connectionURL ="jdbc:mysql://localhost:3306/myblogC"
    				userId="root"
    				password="password"/>
    <!--
       javaModelGenerator:POJO类生成规则(路径)
	   targetPackage:包路径
	   targetProject:生成到当前文件的哪个相对路径下
    -->
    <javaModelGenerator targetPackage="com.zzx.pojo" targetProject="src/main/java"/>
    <!--
	    mapper配置文件,路径
	    sqlMapGenerator mapper xml映射文件生成规则
	    targetPackage生成到哪个包下
		targetProject生成到当前文件的哪个相路下
    -->
    <sqlMapGenerator targetPackage="com.zzx.mapper"targetProject="src/main/java"/>	
     <!--
	   	 javaClientGenerator:mapper接口映射地址
	     type="XMLMAPPER" 
		     1.使用注解形式生成
		     2.接口绑定方式指定生成的方式
	     targetPackage生成到哪个包下
		 targetProject生成到当前文件的哪个相路下
    -->			
 	 <javaClientGenerator type="XMLMAPPER" 
 	  targetPackage="com.zzx.mapper" 
 	  targetProject="src/main/resources"/>
    <table tableName="FooTable" />  
 	<!--
 	配置哪些表需要进行代码生成 
 	tableName:对应数据库的表明
 	domainObjectName:对应数据库POJO类名
 	mapperName:mapper接口的命名与对应xml映射文件的命名
 	-->
 	<table tableName="emp" domainObjectName="Emp" mapperName="EmpMapper"/>
 	<table tableName="dept" domain0bjectName="Dept" mapperName="DeptMapper"/>
</generatorConfiguration>
<dependency>
	<groupId>org.mybatis.generator</groupId>
	<artifactId>mybatis-generator-core</artifactId>
	<version>1.4.0</version>
</dependency>

and

<dependency>
	<groupId>org.mybatis.generator</groupId>
	<artifactId>mybatis-generator-maven-plugin</artifactId>
	<version>1.4.0</version>
</dependency>
@Test
public void test01() throws Exception{
	List<String> warnings = new ArrayList<String>();
	boolean overwrite = true;
	File configFile = new File("generatorConfig.xml");
	ConfigurationParser cp = new ConfigurationParser(warnings);
	Configuration config = cp. parseConfiguration(configFile);
	DefaultShel1Callback callback = new DefaultShel1Callback (overwrite);
	MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,callback,warnings);
	myBatisGenerator.generate(null);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值