直接進入主題,由於項目選擇的利用maven構建,所以選擇了利用maven的生成方式。(還有一種可自行百度)
一、在pom.xml中添加插件
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <!--配置文件的位置--> <configurationFile>src/main/resources/Personal-GeneratorConfig.xml</configurationFile> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin>
二、配置xml文件
該xml文件主要是利用已經存在的數據庫表,通過配置,來使數據庫表的信息和pojo、Mapper.xml、Dao產生聯系
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.apache.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration>
<!-- 數據庫配置信息,用項目的jdbc.properties來引入本xml--> <properties resource="jdbc.properties"></properties> <!-- 數據庫驅動包,使用絕對路徑 在這里我使用的是跟我項目依賴版本一致的mysql驅動--> <classPathEntry location="D:\maven\localRpertory\mysql\mysql-connector-java\5.1.30\mysql-connector-java-5.1.30.jar" /> <!-- 環境配置 **************************************************
id="自定義的配置名稱" targetRuntime="MyBatis版本" --> <context id="ssm-context" targetRuntime="MyBatis3"> <commentGenerator> <!-- 去除自動生成的注釋 --> <property name="suppressAllComments" value="true" /> </commentGenerator> <!-- 數據庫連接配置 --> <!-- 數據庫 ===============================================
driverClass="驅動" connectionURL="數據庫url" userId="用戶" password="密碼"
====================================================== --> <jdbcConnection driverClass="${driver}" connectionURL="${url}" userId="${username}" password="${password}" /> <!--jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/test" userId="root" password="mysql" / --> <!-- Java數據類型分離器,數據類型轉換 ===================== property 屬性 name="強迫雙精度" value="不" 非必須選項 ================================================ --> <javaTypeResolver> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!-- Java模型生成器 ======================================= targetPackage="生成文件的目標路徑" targetProject="已存在的項目包" enableSubPackages-可以省略對應約束名,true-是的,可以省略tb_generator trimString-驗證字符串,true-是的 ================================--> <javaModelGenerator targetPackage="com.my.traffic.domain" targetProject="src/main/java" /> <!-- sql映射文件生成器 ======================================= targetPackage="生成文件的目標路徑" targetProject="已存在的項目包" enableSubPackages-可以省略對應約束名,true-是的, 可以省略tb_generator ============================================--> <sqlMapGenerator targetPackage="com.my.traffic.mapping" targetProject="src/main/java" /> <!-- java委托對象DAO生成器,接口 ============================= 這里為了更加靈活,我沒有選擇生成Dao接口,如果需要生成可以把下面的配置取消注釋 type="" targetPackage="生成文件的目標路徑" targetProject="已存在的項目包" enableSubPackages-可以省略對應約束名,true-是的,可以省略tb_generator --> <!-- <javaClientGenerator type="XMLMAPPER" targetPackage="cn.xt.dao" targetProject="MyBatisGenerate"> <property name="enableSubPackages" value="false" /> </javaClientGenerator> --> <!-- 數據庫表,已存在,根據此表生成其它文件 ======================= tableName="已有的表單名稱" domainObjetctName="對應生成的文件名前綴" (即我的表名為pass_vehivle_info,這樣配置我生成的pojo名為PassVehicleInfo,生成的xml為PassVehicleInfoMapper.xml) ============================================--> <!-- 呼叫日志表 --> <table tableName="pass_vehicle_info" domainObjectName="PassVehicleInfo"> <!-- useActualColumnNames-是否使用真實列名 , 如果false,則由columnOverride節點控制 ,遵循駝峰命名的方式--> <property name="useActualColumnNames" value="flase"/> <!-- 標識列 column="列名" sqlStatement="某種數據庫語言" identity="作為主鍵" --> <generatedKey column="pass_id" sqlStatement="MySql" identity="true" /> </table> </context> </generatorConfiguration>
三、運行generator插件
運行方法:在eclipse 中,選擇pom.xml文件,擊右鍵先擇Run AS——>Maven Build… ——>在Goals框中輸入:mybatis-generator:generate 運行即可
這樣,相關的文件就會生成在配置的路徑下,如果需要的話,可以進行自行刪減、改名,很方便