日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Mybatis 逆向工程 自动生成代码

發布時間:2024/9/5 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mybatis 逆向工程 自动生成代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Mybatis 可以通過一定的代碼,自動生成包括mapper.xml、mapper.java、po等文件;

一、環境準備:

用到的JAR包如下:

文件只有兩個:GenMain.java和generatorConfig.xml文件,都放在src目錄下。

二、實現方法

1、新建一個JAVA項目,

GenMain.java(主文件)

1 import java.io.File; 2 import java.io.IOException; 3 import java.sql.SQLException; 4 import java.util.ArrayList; 5 import java.util.List; 6 7 import org.mybatis.generator.api.MyBatisGenerator; 8 import org.mybatis.generator.config.Configuration; 9 import org.mybatis.generator.config.xml.ConfigurationParser; 10 import org.mybatis.generator.exception.InvalidConfigurationException; 11 import org.mybatis.generator.exception.XMLParserException; 12 import org.mybatis.generator.internal.DefaultShellCallback; 13 14 public class GenMain { 15 public static void main(String[] args) { 16 List<String> warnings = new ArrayList<String>(); 17 boolean overwrite = true; 18 String genCfg = "generatorConfig.xml"; 19 File configFile = new File(GenMain.class.getResource(genCfg).getFile()); 20 ConfigurationParser cp = new ConfigurationParser(warnings); 21 Configuration config = null; 22 try { 23 config = cp.parseConfiguration(configFile); 24 } catch (IOException e) { 25 e.printStackTrace(); 26 } catch (XMLParserException e) { 27 e.printStackTrace(); 28 } 29 DefaultShellCallback callback = new DefaultShellCallback(overwrite); 30 MyBatisGenerator myBatisGenerator = null; 31 try { 32 myBatisGenerator = new MyBatisGenerator(config, callback, warnings); 33 } catch (InvalidConfigurationException e) { 34 e.printStackTrace(); 35 } 36 try { 37 myBatisGenerator.generate(null); 38 } catch (SQLException e) { 39 e.printStackTrace(); 40 } catch (IOException e) { 41 e.printStackTrace(); 42 } catch (InterruptedException e) { 43 e.printStackTrace(); 44 } 45 } 46 }

配置文件:generatorConfig.xml

1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE generatorConfiguration 3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" 4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> 5 6 <generatorConfiguration> 7 <context id="testTables" targetRuntime="MyBatis3"> 8 <commentGenerator> 9 <!-- 是否去除自動生成的注釋 true:是 : false:否 --> 10 <property name="suppressAllComments" value="true" /> 11 </commentGenerator> 12 <!--數據庫連接的信息:驅動類、連接地址、用戶名、密碼 --> 13 <jdbcConnection driverClass="com.mysql.jdbc.Driver" 14 connectionURL="jdbc:mysql://localhost:3306/mybatis" 15 userId="root" 16 password="123456"> 17 </jdbcConnection> 18 19 <!-- 默認false,把JDBC DECIMAL 和 NUMERIC 類型解析為 Integer,為 true時把JDBC DECIMAL 和 20 NUMERIC 類型解析為java.math.BigDecimal --> 21 <javaTypeResolver> 22 <property name="forceBigDecimals" value="false" /> 23 </javaTypeResolver> 24 25 <!-- targetProject:生成PO類的位置 --> 26 <javaModelGenerator targetPackage="com.itheima.mybatis.po" 27 targetProject=".\src"> 28 <!-- enableSubPackages:是否讓schema作為包的后綴 --> 29 <property name="enableSubPackages" value="false" /> 30 <!-- 從數據庫返回的值被清理前后的空格 --> 31 <property name="trimStrings" value="true" /> 32 </javaModelGenerator> 33 <!-- targetProject:mapper映射文件生成的位置 --> 34 <sqlMapGenerator targetPackage="com.itheima.mybatis.mapper" 35 targetProject=".\src"> 36 <!-- enableSubPackages:是否讓schema作為包的后綴 --> 37 <property name="enableSubPackages" value="false" /> 38 </sqlMapGenerator> 39 <!-- targetPackage:mapper接口生成的位置 --> 40 <javaClientGenerator type="XMLMAPPER" 41 targetPackage="com.itheima.mybatis.mapper" 42 targetProject=".\src"> 43 <!-- enableSubPackages:是否讓schema作為包的后綴 --> 44 <property name="enableSubPackages" value="false" /> 45 </javaClientGenerator> 46 <!-- 指定數據庫表 --> 47 <table schema="" tableName="user"></table> 48 <table schema="" tableName="orders"></table> 49 <table schema="" tableName="orderdetail"></table> 50 <table schema="" tableName="items"></table> 51 52 <!-- 有些表的字段需要指定java類型 53 <table schema="" tableName=""> 54 <columnOverride column="" javaType="" /> 55 </table> --> 56 </context> 57 </generatorConfiguration>

?數據庫基本配置和生成文件的目錄,都在上述文件中配置;

轉載于:https://www.cnblogs.com/lrzy/p/8422796.html

總結

以上是生活随笔為你收集整理的Mybatis 逆向工程 自动生成代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。