代碼生成器的作用:
1、生成domain
2、生成mapper接口
3、生成mapper映射文件
准備工作:導入MyBatis所需要的包
第一步:在src/main/resources(必須)目錄下創建代碼生成器配置文件(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> <!--mysql數據庫驅動包路徑--> <classPathEntry location="D:\repository\mysql\mysql-connector-java\5.1.39\mysql-connector-java-5.1.39.jar" /> <!-- context:代碼生成規則配置的上下文 id:標識 targetRuntime: MyBatis3Simple 只會生成基本的CRUD操作 --> <context id="DB2Tables" targetRuntime="MyBatis3Simple"> <!--commentGenerator:注釋生成策略--> <commentGenerator> <!--suppressAllComments:是否阻止注釋生成--> <property name="suppressAllComments" value="true"/> <!--suppressDate:是否阻止時間戳生成--> <property name="suppressDate" value="true"/> </commentGenerator> <!--jdbcConnection:數據庫的鏈接屬性--> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql:///數據庫名稱" userId="用戶名" password="密碼"> </jdbcConnection> <!--javaTypeResolver:java類型轉換策略--> <javaTypeResolver > <!-- forceBigDecimals false:如果數據庫中的字段類型為numeric或者decimal,在代碼生成的時候根據數據庫中設定的長度自動選擇java類型進行轉換 true:直接使用java.math.BigDecimal類型--> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!--domain生成策略;targetPackage:生成到哪個包下面,targetProject:生成到哪個項目目錄下面--> <javaModelGenerator targetPackage="cn.wang.domain" targetProject="src/main/java"> <!--<property name="enableSubPackages" value="true" />--> <!--表示是否修剪字符串(去掉空格--> <property name="trimStrings" value="true" /> </javaModelGenerator> <!--sqlMapGenerator:映射文件生成策略 targetPackage:生成到哪個包下面,targetProject:生成到哪個項目目錄下面 --> <sqlMapGenerator targetPackage="cn.wang.mapper" targetProject="src/main/resources"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!--mapper接口生成策略 type:ANNOTATEDMAPPER:注解的形式 XMLMAPPER:xml映射的形式--> <javaClientGenerator type="XMLMAPPER" targetPackage="cn.wang.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--指定要生成代碼的表 domainObjectName:設置表對應的domain實體類生成的名稱 --> <table tableName="t_user" domainObjectName="User"></table> <table tableName="t_dept" domainObjectName="Dept"></table> <table tableName="product" domainObjectName="Product"></table> </context> </generatorConfiguration>
第二步:在Maven項目的pom.xml加入以下配置(Maven插件方式使用)
注意:以下配置千萬不要放在<pluginManagement></pluginManagement>標簽里面。
<!--mybatis_generator代碼生成器專用--> <build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.7</version> </plugin> </plugins> </build>
第三步:使用MyBatis代碼生成器
配置完畢后,就可以在Idea頁面最右邊的Maven Projects中看到代碼生成器,右鍵點擊代碼生成器運行即可。
拓展:使用命令運行代碼生成器
1、必須事先在src/main/resources(必須)目錄下創建代碼生成器配置文件(generatorConfig.xml)
2、下載jar包:mybatis-generator-core-1.3.7.jar;並將jar包放在項目根目錄下。
3、在項目根目錄中打開cms控制台,執行以下命令即可。
java -jar mybatis-generator-core-1.3.7.jar -configfile generatorConfig.xml -overwrite