SpringBoot入門教程(四)MyBatis generator 注解方式和xml方式


MyBatis 是一款優秀的持久層框架,它支持定制化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以使用簡單的 XML 或注解來配置和映射原生信息,將接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java對象)映射成數據庫中的記錄。

兩種形式:

XML方式 type="XMLMAPPER"
注解方式 type="ANNOTATEDMAPPER"

vxml方式

1.1 pom.xml里添加maven插件

<!-- mybatis.generator start-->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.5</version>
                <dependencies>
                    <dependency>
                        <groupId> mysql</groupId>
                        <artifactId> mysql-connector-java</artifactId>
                        <version> 5.1.39</version>
                    </dependency>
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.3.5</version>
                    </dependency>
                </dependencies>
                <executions>
                    <execution>
                        <id>Generate MyBatis Artifacts</id>
                        <phase>package</phase>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <!--允許移動生成的文件 -->
                    <verbose>true</verbose>
                    <!-- 是否覆蓋 -->
                    <overwrite>true</overwrite>
                    <!-- 自動生成的配置 -->
                    <configurationFile>
                        src/main/resources/mybatis-generator/mybatis-generator.xml</configurationFile>
                </configuration>
            </plugin>
            <!-- mybatis.generator end-->

SpringBoot入門教程(四)MyBatis generator 注解方式和xml方式

1.2 resources下創建mybatis-generator.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="DB2Tables"    targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--數據庫鏈接地址賬號密碼-->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/mytest" userId="toutou" password="*********">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <javaModelGenerator targetPackage="com.demo.pojo"
                            targetProject="src/main/java">
            <property name="enableSubPackages" value="false" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="mapper"
                         targetProject="src/main/resources">
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>

        <javaClientGenerator targetPackage="com.demo.dao"
                             targetProject="src/main/java"
                             type="XMLMAPPER">
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
        <!--生成對應表及類名-->
        <table tableName="userdetails" domainObjectName="UserDetails" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
    </context>
</generatorConfiguration>

SpringBoot入門教程(四)MyBatis generator 注解方式和xml方式

1.3 在maven project下雙擊mybatis-generator插件下的mybatis-generator:generate

SpringBoot入門教程(四)MyBatis generator 注解方式和xml方式

1.4 更新application.properties

SpringBoot入門教程(四)MyBatis generator 注解方式和xml方式

配置文件版與注解版相比,要稍微復雜一點,兩者的區別僅為mapper層處理的處理方式不一樣,因此實體層與控制層,數據庫等均相同。

v注解方式

在之前的文章《SpringBoot(一)詳解intellij idea搭建SpringBoot》中,我們用的就是mybatis注解版的,這里就不多說了。

關於注解版更多詳細demo可以看MyBatis 3 Annotation Example with @Select, @Insert, @Update and @Delete

mybatis generator ANNOTATEDMAPPER和XMLMAPPER,用mybatis generator注解方式,主要是將javaClientGenerator中的type屬性更換為type="ANNOTATEDMAPPER"

v博客總結

注解版更簡潔也更清晰,去掉了xml文件,是推薦使用的。尤其是結合springboot,springboot本身相對於傳統springmvc項目來說,就是去配置話,讓項目更簡潔。


作  者:請叫我頭頭哥
出  處:http://www.cnblogs.com/toutou/
關於作者:專注於基礎平台的項目開發。如有問題或建議,請多多賜教!
版權聲明:本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接。
特此聲明:所有評論和私信都會在第一時間回復。也歡迎園子的大大們指正錯誤,共同進步。或者直接私信
聲援博主:如果您覺得文章對您有幫助,可以點擊文章右下角推薦一下。您的鼓勵是作者堅持原創和持續寫作的最大動力!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM