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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【手把手教学】基于Maven构建方式使用Mybatis generator自动生成

發布時間:2024/2/28 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【手把手教学】基于Maven构建方式使用Mybatis generator自动生成 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介

Mybatis generator是一種代碼生成器, 可以基于數據庫表的字段與類型,自動生成Java代碼中對應的entity類、dao類、mapper映射文件。

實現Mybatis generator功能有多種方式,如插件方式、配置文件方式等。 這里采用經過我個人實踐并成功的方式來操作。

方式:基于Maven項目構建,XML文件配置的方式。

?

一. 添加依賴

第一個依賴是mybatis-generator代碼生成器的核心依賴

第二個依賴是mysql通過JDBC連接數據庫的依賴

<!-- https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core --> <dependency><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-core</artifactId><version>1.3.6</version> </dependency><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.38</version> </dependency>

添加完依賴后, 記得刷新一下maven項目。 讓maven自動下載這兩個依賴對應的jar包。

?

二. 配置generatorConfig.xml

generatorConfig.xml文件主要作用是配置生成文件的路徑、位置、以及表名等基本信息。 當然也可以配置如注釋定制等信息,這里只做最基礎的功能實現。

下面講解幾個重要參數:

  • javaModelGenerator:生成entity類存放位置(也就是POJO類存放位置)
    • targetPackage:類的包名
    • targetProject:項目在計算機中的地址
  • sqlMapGenerator:生成映射文件存放位置(也就是sql語句存放位置)
    • 同上
  • javaClientGenerator:生成Dao類存放位置(也就是dao文件存放位置)
    • 同上
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration><context id="DB2Tables" targetRuntime="MyBatis3"><jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://數據庫地址"userId="username"password="password"></jdbcConnection><!--生成entity類存放位置--><javaModelGenerator targetPackage="包名(com.generator.test.entity)" targetProject="項目地址到\java (D:\workspace\src\main\java)"><property name="enableSubPackages" value="true"/><property name="trimStrings" value="true"/></javaModelGenerator><!--生成映射文件存放位置--><sqlMapGenerator targetPackage="包名(com.generator.test.mapper)" targetProject="項目地址到\java (D:\workspace\src\main\java)"><property name="enableSubPackages" value="true"/></sqlMapGenerator><!--生成Dao類存放位置--><javaClientGenerator type="XMLMAPPER" targetPackage="包名(com.generator.test.dao)"targetProject="項目地址到\java (D:\workspace\src\main\java)"><property name="enableSubPackages" value="true"/></javaClientGenerator><table tableName="表名" domainObjectName="生成實體的類名"></table></context> </generatorConfiguration>

下面貼一段實例(代碼的項目地址是Mac系統中的項目地址,與Windows有所不同,Windows重點項目地址形如D:\workspace\src\main\java):

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration><context id="DB2Tables" targetRuntime="MyBatis3"><jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/myDataBase"userId="lab_1941747"password="4546091bded4"></jdbcConnection><!--生成entity類存放位置--><javaModelGenerator targetPackage="org.example.beans" targetProject="/Users/zhanglong/IdeaProjects/test1/src/main/java"><property name="enableSubPackages" value="true"/><property name="trimStrings" value="true"/></javaModelGenerator><!--生成映射文件存放位置--><sqlMapGenerator targetPackage="mybatis" targetProject="/Users/zhanglong/IdeaProjects/test1/src/main/resources"><property name="enableSubPackages" value="true"/></sqlMapGenerator><!--生成Dao類存放位置--><javaClientGenerator type="XMLMAPPER" targetPackage="org.example.dao" targetProject="/Users/zhanglong/IdeaProjects/test1/src/main/java"><property name="enableSubPackages" value="true"/></javaClientGenerator><table tableName="students" domainObjectName="Students"></table></context> </generatorConfiguration>

?

三. 運行

這段代碼的大致意思是啟動MyBatisGenerator,根據配置文件的方案自動生成代碼

package org.example;import org.mybatis.generator.api.MyBatisGenerator; import org.mybatis.generator.config.Configuration; import org.mybatis.generator.config.xml.ConfigurationParser; import org.mybatis.generator.exception.XMLParserException; import org.mybatis.generator.internal.DefaultShellCallback;import java.io.File; import java.io.IOException; import java.sql.*; import java.util.ArrayList; import java.util.List;/*** 運行前提:添加mysql-connector-java依賴*/ public class test {public static void main(String[] args) throws Exception {List<String> warnings = new ArrayList<String>();boolean overwrite = true;File configFile = new File("src/main/java/org/example/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);} }

?

四. 運行結果(忽略報錯哈,畫橫線的三個就是生成結果的三個包)


會了記得點贊! 有問題及時留言!看到就會解答!

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的【手把手教学】基于Maven构建方式使用Mybatis generator自动生成的全部內容,希望文章能夠幫你解決所遇到的問題。

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