mybatis的逆向工程
1、什麼是逆向工程
(1)Mybatis提供來一個逆向工程工具,通過逆向工程,可以幫助程式設計師根據單表來生成po類、mapper對映檔案、mapper介面。
2、下載逆向工程
(1)下載地址:
https://github.com/mybatis/generator/releases/tag/mybatis-generator-1.3.2
3、建立逆向工程
4、建立Generator.java
新增新增generatorConfig.xml檔案後,直接執行Generator.java即可
public class Generator {
public static void main(String[] args) throws Exception {
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
//引入generatorConfig.xml配置檔案
File configFile = new File("config/generatorConfig.xml");
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,
callback, warnings);
myBatisGenerator.generate(null);
}
}
5、新增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>
<context id="testTables" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自動生成的註釋 true:是 : false:否 -->
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/mybatis" userId="root"
password="root">
</jdbcConnection>
<!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver"
connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"
userId="yycg" password="yycg"> </jdbcConnection> -->
<!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer,
為 true時把JDBC DECIMAL
和 NUMERIC 型別解析為java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- targetProject:生成PO類的位置 -->
<javaModelGenerator targetPackage="com.san.po"
targetProject=".\src">
<!-- enableSubPackages:是否讓schema作為包的字尾 -->
<property name="enableSubPackages" value="false" />
<!-- 從資料庫返回的值被清理前後的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- targetProject:mapper對映檔案生成的位置 -->
<sqlMapGenerator targetPackage="com.san.mapper"
targetProject=".\src">
<!-- enableSubPackages:是否讓schema作為包的字尾 -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- targetPackage:mapper介面生成的位置 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.san.mapper" targetProject=".\src">
<!-- enableSubPackages:是否讓schema作為包的字尾 -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 指定資料庫表 -->
<table tableName="items"></table>
<table tableName="orders"></table>
<table tableName="orderdetail"></table>
<table tableName="user"></table>
</context>
</generatorConfiguration>
7、注意事項
(1)Mapper.xml檔案已經存在時,如果進行重新生成則mapper.xml檔案時,內容不被覆蓋而是進行內容追加,結果導致mybatis解析失敗。
(2)解決方法:刪除原來已經生成的mapper xml檔案再進行生成。
Mybatis自動生成的po及mapper.java檔案不是內容而是直接覆蓋沒有此問題。
相關文章
- Mybatis逆向工程MyBatis
- 小白的MyBatis逆向工程MyBatis
- 【SSM-MyBatis框架】逆向工程SSMMyBatis框架
- ibatis和myBatis的逆向工程使用MyBatis
- Mybatis逆向工程和新版本MybatisPlus3.4逆向工程的使用MyBatisS3
- 筆記:MyBatis逆向工程 - Win/Mac筆記MyBatisMac
- Maven外掛生成myBatis逆向工程MavenMyBatis
- mybatis逆向工程和SSM框架整合MyBatisSSM框架
- mybatis入門基礎(九)----逆向工程MyBatis
- springboot整合mybatis增刪改查(三):mybatis逆向工程Spring BootMyBatis
- Mybatis【逆向工程,快取,代理】知識要點MyBatis快取
- idea 中使用Mybatis Generator逆向工程生成程式碼IdeaMyBatis
- 開發工具:Mybatis.Plus.外掛三種方式的逆向工程MyBatis
- IDEA中建立springboot+Mybatis+generator逆向工程IdeaSpring BootMyBatis
- 回顧一下MyBatis逆向工程——自動生成程式碼MyBatis
- iOS逆向工程iOS
- 收藏的爬蟲逆向工程爬蟲
- 逆向工程核心原理(1)逆向基礎
- ios逆向工程連結iOS
- 【翻譯】Delphi中類的逆向工程
- iOS開發之逆向工程iOS
- 逆向工程加密函式:AES加密函式
- iOS逆向工程 iOS工具篇iOS
- Delphi逆向工程筆記[1]筆記
- Delphi逆向工程筆記[2]筆記
- Delphi逆向工程筆記[3]筆記
- Delphi逆向工程筆記[4]筆記
- Delphi逆向工程筆記[5]筆記
- MyBatis逆向工 maven外掛 generator 的配置及使用MyBatisMaven
- 我逆向工程zone.js後的發現JS
- PowerDsigner 16逆向工程匯入mysqlMySql
- 淺談VB6逆向工程(1)
- 淺談VB6逆向工程(2)
- 淺談VB6逆向工程(3)
- 淺談VB6逆向工程(4)
- 淺談VB6逆向工程(5)
- 翻譯 | 一行 JavaScript 程式碼的逆向工程JavaScript
- mybatis根據表逆向自動化生成程式碼MyBatis