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

MyBatis?Generator快速生成實體類和映射文件的方法

 更新時間:2023年10月23日 17:25:49   作者:陳亦康  
這篇文章主要介紹了MyBatis?Generator快速生成實體類和映射文件的方法,通過示例代碼介紹了MyBatis?Generator?的使用,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下

一、MyBatis Generator 的使用

1.1、生成類和映射文件

1.1.1、在 pom.xml 中引入依賴

在 properties 標(biāo)簽中加入版本號.

<mybatis-generator-plugin-version>1.4.1</mybatis-generator-plugin-version>

在 build => plugins 標(biāo)簽中加入如下配置

            <!-- mybatis ?成器插件 -->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>${mybatis-generator-plugin-version}</version>
                <executions>
                    <execution>
                        <id>Generate MyBatis Artifacts</id>
                        <phase>deploy</phase>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>
                <!-- 相關(guān)配置 -->
                <configuration>
                    <!-- 打開?志 -->
                    <verbose>true</verbose>
                    <!-- 允許覆蓋 -->
                    <overwrite>true</overwrite>
                    <!-- 配置?件路徑 -->
                    <configurationFile>
                        src/main/resources/mybatis/generatorConfig.xml
                    </configurationFile>
                </configuration>
            </plugin>

上述配置中需要注意的是 “配置文件路徑”,這個路徑就是用來生成 實體類和映射文件 配置規(guī)則的位置.

1.1.2、根據(jù) configurationFile 標(biāo)簽中配置的路徑 創(chuàng)建 generatorConfig.xml 文件

這個文件就是用來描述生成規(guī)則的.

根據(jù)路徑(src/main/resources/mybatis),在 mybatis 目錄下創(chuàng)建 generatorConfig.xml 文件.

Ps:下述配置文件中需要修改的有 數(shù)據(jù)庫連接、實體類和映射文件的路徑、數(shù)據(jù)庫表名

<?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>
    <!-- 驅(qū)動包路徑,location中路徑替換成??本地路徑 -->
    <classPathEntry location="D:\class\source\mysql-connector-java-5.1.49.jar"/>
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <!-- 禁??動?成的注釋 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
            <property name="suppressDate" value="true"/>
        </commentGenerator>
        <!-- 連接配置 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://127.0.0.1:3306/javanav_db?
characterEncoding=utf8&amp;useSSL=false"
                        userId="root"
                        password="1111">
        </jdbcConnection>
        <javaTypeResolver>
            <!-- ?數(shù)統(tǒng)?轉(zhuǎn)為BigDecimal -->
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 實體類?成位置 -->
        <javaModelGenerator targetPackage="com.example.cyk.model"
                            targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- mapper.xml?成位置 -->
        <sqlMapGenerator targetPackage="mapper"
                         targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!-- mapper 接口?成位置 -->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.example.cyk.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!-- 配置?成表與實例, 只需要修改表名tableName, 與對應(yīng)類名domainObjectName 即
       可-->
        <table tableName="j_article" domainObjectName="Article"
               enableSelectByExample="false"
               enableDeleteByExample="false" enableDeleteByPrimaryKey="false"
               enableCountByExample="false"
               enableUpdateByExample="false">
            <!-- 類的屬性?數(shù)據(jù)庫中的真實字段名做為屬性名, 不指定這個屬性會?動轉(zhuǎn)換 _ 為
           駝峰命名規(guī)則-->
            <property name="useActualColumnNames" value="true"/>
        </table>
        <table tableName="j_article_reply" domainObjectName="ArticleReply"
               enableSelectByExample="false"
               enableDeleteByExample="false" enableDeleteByPrimaryKey="false"
               enableCountByExample="false"
               enableUpdateByExample="false">
            <property name="useActualColumnNames" value="true"/>
        </table>
        <table tableName="j_board" domainObjectName="Board"
               enableSelectByExample="false" enableDeleteByExample="false"
               enableDeleteByPrimaryKey="false" enableCountByExample="false"
               enableUpdateByExample="false">
            <property name="useActualColumnNames" value="true"/>
        </table>
        <table tableName="j_message" domainObjectName="Message"
               enableSelectByExample="false"
               enableDeleteByExample="false" enableDeleteByPrimaryKey="false"
               enableCountByExample="false"
               enableUpdateByExample="false">
            <property name="useActualColumnNames" value="true"/>
        </table>
        <table tableName="j_user" domainObjectName="User"
               enableSelectByExample="false" enableDeleteByExample="false"
               enableDeleteByPrimaryKey="false" enableCountByExample="false"
               enableUpdateByExample="false">
            <property name="useActualColumnNames" value="true"/>
        </table>
    </context>
</generatorConfiguration>

注意:

驅(qū)動包路徑是自己本地倉庫的路徑

但一定注意??! 需要在非中文的目錄下,因此你可以把這個驅(qū)動包拷貝出來,放到一個非中文的目錄中即可.

1.1.3、自動生成類 和 映射文件

重新加載Maven項?,在Plugins節(jié)點下出現(xiàn)mybatis-generator,雙擊運?,在對應(yīng)的目錄下?成相應(yīng)的類與映射?件:

接著你就可以看到對應(yīng)的生成了

1.1.4、在 Insert 標(biāo)簽中添加獲取主鍵值的選項

在生成的 xml 文件中,給每一個 insert 標(biāo)簽都添加以下屬性:useGeneratedKeys="true" keyProperty="id"

<!-- useGeneratedKeys = true -->
<!-- keyProperty = 主鍵字段--> 
 
<!-- 當(dāng)插??條數(shù)據(jù)后,可以通過user.getId()獲取到?動?成的Id值,如果?法中需要?即獲取Id值,加?這個配置 --> 
<insert id="insert" parameterType="com.example.cyk.model.User" 
useGeneratedKeys="true" keyProperty="id" >

Ps:這個選項也可以自動生成,但是不理想(有些問題)

1.1.5、掃描配置:添加 @Mapper 注解 / 添加掃描注解

有兩種方式配置掃描 Mapper 接口.

1)給每個 mapper 包下的 mapper 接口都添加 @Mapper 注解.

2)給啟動類上 或者 新建一個配置類(有 @Configuration 注解)加上 @MapperScan("com.example.cyk.mapper") 注解.

1.1.6、配置 mybatis

在 yml 文件中配置

mybatis:
  mapper-locations: classpath:mapper/**/*Mapper.xml

1.1.7、測試

@SpringBootTest
public class TestMapper {
 
    @Autowired
    private UserMapper userMapper;
 
    @Test
    public void select() {
        User user = userMapper.selectByPrimaryKey(1L);
        System.out.println(user);
    }
 
}

到此這篇關(guān)于MyBatis Generator如何快速生成實體類和映射文件的文章就介紹到這了,更多相關(guān)MyBatis Generator生成 實體類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何解決java:錯誤:無效的源發(fā)行版:17問題

    如何解決java:錯誤:無效的源發(fā)行版:17問題

    這篇文章主要介紹了如何解決java:錯誤:無效的源發(fā)行版:17問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • java數(shù)據(jù)類型轉(zhuǎn)換之自動類型轉(zhuǎn)換和強制類型轉(zhuǎn)換詳解

    java數(shù)據(jù)類型轉(zhuǎn)換之自動類型轉(zhuǎn)換和強制類型轉(zhuǎn)換詳解

    在 Java 中,數(shù)據(jù)類型轉(zhuǎn)換用于將一種基本數(shù)據(jù)類型的值轉(zhuǎn)換為另一種基本數(shù)據(jù)類型,主要分為自動類型轉(zhuǎn)換(隱式轉(zhuǎn)換)?和強制類型轉(zhuǎn)換(顯式轉(zhuǎn)換)?兩種,下面小編就為大家簡單介紹一下吧
    2025-11-11
  • Java中緩存的使用及使用場景淺講

    Java中緩存的使用及使用場景淺講

    Java緩存是指為了提高數(shù)據(jù)訪問速度,在內(nèi)存中存儲數(shù)據(jù)副本的一種技術(shù),這篇文章主要介紹了Java中緩存使用及使用場景的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-08-08
  • Java 判斷IP地址的合法性實例詳解

    Java 判斷IP地址的合法性實例詳解

    這篇文章主要介紹了Java 判斷IP地址的合法性實例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Java與WebUploader相結(jié)合實現(xiàn)文件上傳功能(實例代碼)

    Java與WebUploader相結(jié)合實現(xiàn)文件上傳功能(實例代碼)

    這篇文章主要介紹了Java結(jié)合WebUploader實現(xiàn)文件上傳功能,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • idea快速搭建spring cloud注冊中心與注冊的方法

    idea快速搭建spring cloud注冊中心與注冊的方法

    這篇文章主要介紹了idea快速搭建spring cloud注冊中心與注冊的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 基于spring boot 的配置參考大全(推薦)

    基于spring boot 的配置參考大全(推薦)

    下面小編就為大家?guī)硪黄趕pring boot 的配置參考大全(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • maven打包失敗踩坑的解決方式詳解

    maven打包失敗踩坑的解決方式詳解

    最近因為新項目有很多自定義的jar包,而且占內(nèi)存很多,就直接拷貝過來,新開了一個maven倉庫,用的時候沒有問題,但是打包一直編譯不通過,下面這篇文章主要給大家介紹了關(guān)于maven打包失敗踩坑的解決方式,需要的朋友可以參考下
    2023-05-05
  • Spring中容器創(chuàng)建的四種方式示例

    Spring中容器創(chuàng)建的四種方式示例

    這篇文章主要介紹了Spring中容器創(chuàng)建的四種方式示例,Spring容器是Spring框架的核心部分,它負(fù)責(zé)管理和組織應(yīng)用程序中的對象,它提供了一種輕量級的、非侵入式的方式來實現(xiàn)對象的創(chuàng)建、依賴注入和生命周期管理,需要的朋友可以參考下
    2023-10-10
  • 最值得Java開發(fā)者收藏的網(wǎng)站

    最值得Java開發(fā)者收藏的網(wǎng)站

    這篇文章主要為大家分享了最值得Java開發(fā)者收藏的11個網(wǎng)站,幫助Java開發(fā)者提升編程能力
    2016-11-11

最新評論

白城市| 无为县| 汝南县| 上思县| 得荣县| 太白县| 长顺县| 荆门市| 涪陵区| 聂拉木县| 太仓市| 台州市| 大同县| 温宿县| 石渠县| 云浮市| 寻乌县| 景谷| 扎赉特旗| 延安市| 新兴县| 手机| 海原县| 淄博市| 行唐县| 贡觉县| 镇江市| 长顺县| 武邑县| 昌乐县| 桓台县| 句容市| 信宜市| 合山市| 平山县| 枣庄市| 资阳市| 图木舒克市| 巢湖市| 陆河县| 镇坪县|