mybatis generator自動生成Mapper文件和Model


使用Mybatis generator可以根據數據庫表生成mybatis對應的Mapper和Model,生成的Example可以滿足一般的單表操作,使用Mybatis的注釋,利用@mbggenerated可以在下次生成的時候將自動生成的代碼覆蓋掉,對於手工加入的查詢不影響(需要使用的eclipse的插件,intellij目前不存在類似的插件),在使用intellij中,可以使用免費的mybatis插件,可以在Mapper類中快速定位到對應的xml中,非常有利於sql查看;

Mybatis配置:

 
         
<?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>

<classPathEntry location="${jdbc.driverLocation}" />
    <!-- 數據庫驅動 -->
    <classPathEntry location="${jdbc.driverLocation}" />
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
        <!-- @mbggenerated 生成的配置-->
            <property name="suppressDate" value="false" />
         <!--是否去除自動生成的注釋 true:是 : false:否 -->
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        
        <!--數據庫鏈接URL,用戶名、密碼 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="${jdbc.connectionURL}" userId="${jdbc.userId}" password="${jdbc.password}" />
        
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>
        <!-- 生成模型的包名和位置 -->
        <javaModelGenerator  targetPackage="${modelpackage_name}"
            targetProject="mybatis_generator">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="false" />
        </javaModelGenerator>
        <!-- 生成映射文件的包名和位置 -->
        <sqlMapGenerator  targetPackage="${mapperpackage_name}"
            targetProject="mybatis_generator">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>
        <!-- 生成DAO的包名和位置 -->
        <javaClientGenerator type="XMLMAPPER"
             targetPackage="${daopackage_name}" 
             targetProject="mybatis_generator">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        <!-- 要生成哪些表 -->
        <table tableName="${table_name}" domainObjectName="${model_name}"
            enableCountByExample="true" enableUpdateByExample="true"
            enableDeleteByExample="true" enableSelectByExample="true"
            selectByExampleQueryId="true">
        </table>
    </context>
</generatorConfiguration>

 

config配置:

jdbc.driverLocation=E://mysql-connector-java-5.1.18-bin.jar
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.connectionURL=jdbc:mysql://ip:port/test?useUnicode=true&characterEncoding=utf-8
jdbc.userId=
jdbc.password=
#模型的包名
modelpackage_name=
#dao的包名
daopackage_name=
#xml存放位置
mapperpackage_name=mapper
#表名
table_name=temp
#生成模型的名字
model_name=Temp

注意:

根據數據庫表生成mybatis對應的模型和Dao Mapper.xml,除了配置項配置以外,如果要生成到別的項目里面(目前是只生成在
這個項目下),需要修改generator-config.xml的targetProject屬性(在properties里面配置在
generator-config.xml無法生效,所以只能手工改,targetProject屬性只要是其他項目名字就好了)


免責聲明!

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



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