最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis Generator 獲取不到字段注釋的解決

 更新時間:2021年09月08日 15:04:58   作者:一頭磕在鍵盤上  
這篇文章主要介紹了Mybatis Generator 獲取不到字段注釋的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Mybatis Generator 獲取不到字段注釋

環(huán)境限制,暫時只提供Oracle和Mysql的解決方法,其它數(shù)據(jù)庫如果遇到同樣問題,原理是一樣的,具體就看該數(shù)據(jù)庫應(yīng)當(dāng)去配置哪個屬性.

解決方法

下面的配置均指的是Mybatis Generator 的配置文件(一般是叫g(shù)eneratorConfig.xml)的配置:

Oracle 數(shù)據(jù)庫

<jdbcConnection driverClass="${driver}"
    connectionURL="{url}" userId="${username}" password="${password}">
    <!-- 針對oracle數(shù)據(jù)庫 -->
    <property name="remarksReporting" value="true"></property>
</jdbcConnection>

MySql 數(shù)據(jù)庫

方法1

<jdbcConnection driverClass="${driver}"
    connectionURL="{url}" userId="${username}" password="${password}">
    <!-- 針對mysql數(shù)據(jù)庫 -->
    <property name="useInformationSchema" value="true"></property>
</jdbcConnection>

方法2

mysql的connectionURL中添加 useInformationSchema=true.大體上就是:

connectionURL="jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8&useInformationSchema=true"

兩種方法任選其一.

詳解

MBG訪問數(shù)據(jù)庫也是通過JDBC進行,而通過JDBC連接Oracle、Mysql(其它數(shù)據(jù)庫暫不清楚)時,想獲取到表及字段注釋是需要額外設(shè)置一些連接屬性的.一般大體上都是如下的代碼(以O(shè)racle為例):

Properties props =newProperties();
props.put("remarksReporting","true");//Oracle
dbConn = DriverManager.getConnection(url, props);
DatabaseMetaData dbmd = dbConn.getMetaData();

這樣通過JDBC就能獲取到表或者字段的注釋了.

那么在MBG中怎么設(shè)置呢?總不能去改源碼吧.其實MBG自身已經(jīng)提供了解決方法.

我們先來看下MBG連接數(shù)據(jù)庫的代碼,可以在org.mybatis.generator.internal.JDBCConnectionFactory中找到:

//以下代碼來自Mybatis Generator 1.3.5
/**
 * This constructor is called when there is a JDBCConnectionConfiguration
 * specified in the configuration.
 * 
 * @param config
 */
public JDBCConnectionFactory(JDBCConnectionConfiguration config) {
    super();
    userId = config.getUserId();
    password = config.getPassword();
    connectionURL = config.getConnectionURL();
    driverClass = config.getDriverClass();
    otherProperties = config.getProperties();//注意此行
}
public Connection getConnection()
        throws SQLException {
    Driver driver = getDriver();
    Properties props = new Properties();
    if (stringHasValue(userId)) {
        props.setProperty("user", userId); //$NON-NLS-1$
    }
    if (stringHasValue(password)) {
        props.setProperty("password", password); //$NON-NLS-1$
    }
    props.putAll(otherProperties);//注意此行
    Connection conn = driver.connect(connectionURL, props);
    if (conn == null) {
        throw new SQLException(getString("RuntimeError.7")); //$NON-NLS-1$
    }
    return conn;
}

通過上面代碼(尤其是我加了注意此行注釋的兩行代碼)我們可以看到,MBG在建立連接時,是把JDBCConnectionConfiguration中的所有properties給設(shè)置進去了.那么顯然我們只需要找到在哪配置這些properties就行了.

JDBCConnectionConfiguration對應(yīng)到XML配置里就是jdbcConnection節(jié)點.

再來看看官方的使用文檔,官方文檔關(guān)于jdbcConnection (點擊查看) 一節(jié)中 <property>子元素的說明:

<property> (0..N) Note: any properties specified here will be added to the properties of the JDBC driver.

那么在配置文件中我們?nèi)缦赂膭蛹纯?

<jdbcConnection driverClass="${driver}"
    connectionURL="{url}" userId="${username}" password="${password}">
    <!-- 針對oracle數(shù)據(jù)庫 -->
    <property name="remarksReporting" value="true"></property>
</jdbcConnection>

關(guān)于如何生成自定義注釋,參見 mybatis-generator自定義注釋生成

mybatis-generator生成數(shù)據(jù)表中注釋

1.克隆項目

打jar包

git clone https://github.com/backkoms/mybatis-generator-comments.git

編譯打包,install到本地或delopy私服庫中均可。

2.修改pom文件

         <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>${plugins-mybatis-generator.version}</version>
                <configuration>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>com.haier.hairy</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.0.1</version>
                    </dependency>
                </dependencies>
          </plugin>

3.配置對應(yīng)的解析生成包

<commentGenerator type="org.mybatis.generator.internal.CustomeCommentGenerator">
     <property name="javaFileEncoding" value="UTF-8"/>
     <property name="suppressDate" value="true" />
     <property name="suppressAllComments" value="false" />
</commentGenerator>

執(zhí)行命令:mvn mybatis-generator:generate

查看執(zhí)行生成文件

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringJPA?做分頁條件查詢的代碼實踐

    SpringJPA?做分頁條件查詢的代碼實踐

    相信小伙伴們的項目很多都用到SpringJPA框架的吧,對于單表的增刪改查利用jpa是很方便的,但是對于條件查詢并且分頁?是不是很多小伙伴不經(jīng)常寫到,今天給大家分享SpringJPA?做分頁條件查詢的案例代碼,感興趣的朋友一起看看吧
    2024-03-03
  • 半小時實現(xiàn)Java手擼網(wǎng)絡(luò)爬蟲框架(附完整源碼)

    半小時實現(xiàn)Java手擼網(wǎng)絡(luò)爬蟲框架(附完整源碼)

    最近在做一個搜索相關(guān)的項目,需要爬取網(wǎng)絡(luò)上的一些鏈接存儲到索引庫中,自己寫了一個簡單的網(wǎng)絡(luò)爬蟲,感興趣的可以了解一下
    2021-06-06
  • Java核心技術(shù)之反射

    Java核心技術(shù)之反射

    本文非常詳細的講解了java反射的相關(guān)資料,java反射在現(xiàn)今的使用中很頻繁,希望此文可以幫大家解答疑惑,可以幫助大家理解
    2021-11-11
  • 聊聊SpringBoot中組件無法被注入的問題

    聊聊SpringBoot中組件無法被注入的問題

    這篇文章主要介紹了SpringBoot中組件無法被注入的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Spring RestTemplate具體使用詳解

    Spring RestTemplate具體使用詳解

    這篇文章主要介紹了Spring RestTemplate具體使用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • 深度理解SpringMVC中的HandlerMapping

    深度理解SpringMVC中的HandlerMapping

    這篇文章主要介紹了深度理解SpringMVC中的HandlerMapping,HandlerMapping的作用根據(jù)request找到對應(yīng)的處理器Handler,在HandlerMapping接口中有一個唯一的方法getHanler,需要的朋友可以參考下
    2023-09-09
  • 在CentOS上配置Java環(huán)境變量的教程

    在CentOS上配置Java環(huán)境變量的教程

    這篇文章主要介紹了在CentOS上配置Java環(huán)境變量的教程,同時適用于Fedora等其他RedHat系的Linux系統(tǒng),需要的朋友可以參考下
    2015-06-06
  • JAVA實現(xiàn)單例模式的四種方法和一些特點

    JAVA實現(xiàn)單例模式的四種方法和一些特點

    JAVA實現(xiàn)單例模式的四種方法和一些特點,需要的朋友可以參考一下
    2013-03-03
  • SpringCloud分布式項目下feign的使用示例詳解

    SpringCloud分布式項目下feign的使用示例詳解

    這篇文章主要介紹了SpringCloud分布式項目下feign的使用,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • mac安裝配置jdk環(huán)境變量

    mac安裝配置jdk環(huán)境變量

    這篇文章主要為大家介紹了mac安裝配置jdk環(huán)境變量實現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07

最新評論

寻乌县| 广州市| 武威市| 民丰县| 正镶白旗| 屯留县| 阿拉善左旗| 博白县| 洞头县| 陇川县| 连江县| 屯留县| 商丘市| 东光县| 正安县| 乌鲁木齐市| 亳州市| 紫阳县| 成安县| 泰宁县| 通化市| 凉城县| 沛县| 临海市| 沙洋县| 岳西县| 新密市| 洛阳市| 清苑县| 报价| 高州市| 封开县| 神池县| 咸阳市| 温泉县| 三穗县| 蒙阴县| 刚察县| 南江县| 襄汾县| 卢湾区|