天下之事,必先处之难,而后易之。

Mybatis定义不同模块的代码生成器

前提:eclipse已安装MBG(MyBatis Generator)。

Mybatis Generator插件怎么使用请参考:https://my.oschina.net/boonya/blog/719502

更多代码生成器介绍请参考:http://www.mybatis.org/generator/index.html

根据项目模块来生成对应的Mapper,这里采用Maven构建项目。首先将需要的数据库连接jar放置到系统C盘下面,如:C:\mysql-connector-java-5.1.12.jar。

Maven依赖配置

<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.1.1</version>
		</dependency>
		<dependency>
			<groupId>org.mybatis.generator</groupId>
			<artifactId>mybatis-generator-maven-plugin</artifactId>
			<version>1.3.2</version>
		</dependency>

Mapper生成配置

文件放置于Resource目录下:

1.以库存模块为例的配置:mybatisGenerator-stock.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>

	<classPathEntry location="C:\mysql-connector-java-5.1.12.jar" />

	<context id="MySqlTables" targetRuntime="MyBatis3">

		<commentGenerator>
			<property name="suppressAllComments" value="true" />
		</commentGenerator>

		<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.200.126:3306/wms?characterEncoding=utf8" userId="root" password="wms123456">
		</jdbcConnection>

		<javaTypeResolver>
			<property name="forceBigDecimals" value="false" />
		</javaTypeResolver>

		<javaModelGenerator targetPackage="com.wlyd.wms.persistence.beans.stock" targetProject="ebwms\src\main\java">
			<property name="enableSubPackages" value="true" />
			<property name="trimStrings" value="true" />
			<property name="rootInterface" value="BaseBean" /> 
		</javaModelGenerator> 


		<sqlMapGenerator targetPackage="com.wlyd.wms.persistence.mapper.stock" targetProject="ebwms\src\main\java">
			<property name="enableSubPackages" value="true" />
		</sqlMapGenerator>


		<javaClientGenerator type="XMLMAPPER" targetPackage="com.wlyd.wms.persistence.mapper.stock" targetProject="ebwms\src\main\java">
			<property name="enableSubPackages" value="true" />
			<property name="rootInterface" value="BaseMapper" />
		</javaClientGenerator>


		 <table tableName="wm_stock_10000" domainObjectName="WmStock"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
		<table tableName="wm_stock_transfer_10000" domainObjectName="WmStockTransfer"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
		<table tableName="wm_stock_adjust_10000" domainObjectName="WmStockAdjust"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
		<table tableName="wm_stock_assigned_10000" domainObjectName="WmStockAssigned"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
		<table tableName="wm_stock_freeze_10000" domainObjectName="WmStockFreeze"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
		<table tableName="wm_stock_release_10000" domainObjectName="WmStockRelease"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
	</context>

</generatorConfiguration> 

2.以入库模块为例的配置:mybatisGenerator-into.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>

	<classPathEntry location="C:\mysql-connector-java-5.1.12.jar" />

	<context id="MySqlTables" targetRuntime="MyBatis3">

		<commentGenerator>
			<property name="suppressAllComments" value="true" />
		</commentGenerator>

		<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.200.126:3306/wms?characterEncoding=utf8" userId="root" password="wms123456">
		</jdbcConnection>

		<javaTypeResolver>
			<property name="forceBigDecimals" value="false" />
		</javaTypeResolver>

		<javaModelGenerator targetPackage="com.wlyd.wms.persistence.beans.into" targetProject="ebwms\src\main\java">
			<property name="enableSubPackages" value="true" />
			<property name="trimStrings" value="true" />
			<property name="rootInterface" value="BaseBean" /> 
		</javaModelGenerator> 


		<sqlMapGenerator targetPackage="com.wlyd.wms.persistence.mapper.into" targetProject="ebwms\src\main\java">
			<property name="enableSubPackages" value="true" />
		</sqlMapGenerator>


		<javaClientGenerator type="XMLMAPPER" targetPackage="com.wlyd.wms.persistence.mapper.into" targetProject="ebwms\src\main\java">
			<property name="enableSubPackages" value="true" />
			<property name="rootInterface" value="BaseMapper" />
		</javaClientGenerator>


		<table tableName="wm_into_order_10000" domainObjectName="WmIntoOrder"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>

       <table tableName="wm_into_orderinfo_10000" domainObjectName="WmIntoOrderinfo"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
		</table>
		
	    <table tableName="wm_receipt_info_10000" domainObjectName="WmReceiptInfo"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
	    </table>
		
		 <table tableName="wm_shelve_info_10000" domainObjectName="WmShelveInfo"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
	    </table>
		
		 <table tableName="wm_into_order_codeno_10000" domainObjectName="WmIntoOrderCodeno"  enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
			selectByExampleQueryId="false">
	    </table>
		
	</context>

</generatorConfiguration> 

注意事项

配置文件中不能使用<!-- -->注释。执行生成脚本前请先创建对应的代码路径。

更多MyBatis Generator的说明请查看:http://www.mybatis.org/generator/index.html

项目生成效果:


示例demo: Mybatis Mapper生成器示例




posted @ 2023-12-01 09:45  boonya  阅读(26)  评论(0)    收藏  举报  来源
我有佳人隔窗而居,今有伊人明月之畔。
轻歌柔情冰壶之浣,涓涓清流梦入云端。
美人如娇温雅悠婉,目遇赏阅适而自欣。
百草层叠疏而有致,此情此思怀彼佳人。
念所思之唯心叩之,踽踽彳亍寤寐思之。
行云如风逝而复归,佳人一去莫知可回?
深闺冷瘦独自徘徊,处处明灯影还如只。
推窗见月疑是归人,阑珊灯火托手思忖。
庐居闲客而好品茗,斟茶徐徐漫漫生烟。

我有佳人在水之畔,瓮载渔舟浣纱归还。
明月相照月色还低,浅近芦苇深深如钿。
庐山秋月如美人衣,画堂春阁香气靡靡。
秋意幽笃残粉摇曳,轻轻如诉画中蝴蝶。
泾水潺潺取尔浇园,暮色黄昏如沐佳人。
青丝撩弄长裙翩翩,彩蝶飞舞执子手腕。
香带丝缕缓缓在肩,柔美体肤寸寸爱怜。
如水之殇美玉成欢,我有佳人清新如兰。
伊人在水我在一边,远远相望不可亵玩。