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
- ibatis和myBatis的逆向工程使用MyBatis
- Mybatis逆向工程和新版本MybatisPlus3.4逆向工程的使用MyBatisS3
- 筆記:MyBatis逆向工程 - Win/Mac筆記MyBatisMac
- Maven外掛生成myBatis逆向工程MavenMyBatis
- MyBatis的逆向工程詳細步驟操作MyBatis
- springboot整合mybatis增刪改查(三):mybatis逆向工程Spring BootMyBatis
- IDEA中建立springboot+Mybatis+generator逆向工程IdeaSpring BootMyBatis
- Mybatis【逆向工程,快取,代理】知識要點MyBatis快取
- idea 中使用Mybatis Generator逆向工程生成程式碼IdeaMyBatis
- 開發工具:Mybatis.Plus.外掛三種方式的逆向工程MyBatis
- 回顧一下MyBatis逆向工程——自動生成程式碼MyBatis
- 收藏的爬蟲逆向工程爬蟲
- 漫談逆向工程
- 逆向工程核心原理(1)逆向基礎
- iOS開發之逆向工程iOS
- iOS逆向工程 iOS工具篇iOS
- 逆向工程暗黑破壞神
- 逆向工程加密函式:AES加密函式
- Mybatis逆向工程的2種方法,一鍵高效快速生成Pojo、Mapper、XML,擺脫大量重複開發MyBatisPOJOAPPXML
- MyBatis逆向工 maven外掛 generator 的配置及使用MyBatisMaven
- 我逆向工程zone.js後的發現JS
- Hibernate【查詢、連線池、逆向工程】
- 逆向工程 O1模型架構模型架構
- Spring Boot整合MybatisPlus逆向工程(MySQL/PostgreSQL)Spring BootMyBatisMySql
- springboot整合mybatis及其反向工程Spring BootMyBatis
- 逆向工程通過某個欄位排序排序
- mybatis根據表逆向自動化生成程式碼MyBatis
- 對大腦進行逆向工程,會找到AI的明日之光嗎?AI
- 招聘:群控(雲控)開發工程師/安卓逆向開發工程師工程師安卓
- MyEclipse2014使用Hibernate逆向工程生成實體類Eclipse
- App加固中的程式碼混淆功能,讓逆向工程師很頭疼APP工程師
- 微軟37頁論文逆向工程Sora,得到了哪些結論?微軟Sora
- iOS逆向工程,(狗神)沙梓社大咖免費技術分享。iOS
- 逆向通達信 x 逆向微信 x 逆向QtQT
- java版工程管理系統Spring Cloud+Spring Boot+Mybatis實現工程管理系統JavaCloudSpring BootMyBatis
- 羽夏逆向——逆向基礎