Maven插件 mybatis-generator Mybatis自動(dòng)生成實(shí)體代碼的插件
在碼農(nóng)的世界里,優(yōu)美的應(yīng)用體驗(yàn),來源于程序員對(duì)細(xì)節(jié)的處理以及自我要求的境界。
Maven插件 mybatis-generator Mybatis自動(dòng)生成實(shí)體代碼的插件
Maven 是一個(gè)優(yōu)秀的項(xiàng)目構(gòu)建和管理工具,mybatis-generator 插件用于快速生成 Mybatis xml 與實(shí)體 Bean。
分為三步,在pom.xml中做兩處配置,第二步創(chuàng)建generatorConfig.xml,第三步運(yùn)行執(zhí)行命令生成代碼
1 mybatis-generator 插件 Maven 配置
首先在你項(xiàng)目的 pom.xml 中配置插件

?
2 mybatis-generator 插件 配置文件創(chuàng)建
在第一步中 我們通過 configurationFile 標(biāo)簽配置了 mybatis-generator 使用的配置文件。
<configurationFile>...generatorConfig.xml</configurationFile>
所以第二步就是創(chuàng)建配置文件

<?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"/>
? ? ? ? ? ?<!-- 是否去除自動(dòng)生成的注釋 true:是 : false:否 -->
? ? ? ? ? ?<property name="suppressAllComments" value="true"/>
? ? ? ?</commentGenerator>
? ? ? ?<!-- 數(shù)據(jù)庫鏈接URL,用戶名、密碼 -->
? ? ? ?<jdbcConnection driverClass="com.mysql.jdbc.Driver"
? ? ? ? ? ? ? ? ? ? ? ?connectionURL="jdbc:mysql://localhost:3306/test_mybatis"
? ? ? ? ? ? ? ? ? ? ? ?userId="zhaolong"
? ? ? ? ? ? ? ? ? ? ? ?password="123456">
? ? ? ?</jdbcConnection>
? ? ? ?<!-- 類型轉(zhuǎn)換 -->
? ? ? ?<javaTypeResolver>
? ? ? ? ? ?<!-- 是否使用BigDecimals,false可自動(dòng)轉(zhuǎn)化以下類型(Long Integer Short等) -->
? ? ? ? ? ?<property name="forceBigDecimals" value="false"/>
? ? ? ?</javaTypeResolver>
? ? ? ?<!-- 生成模型的包名和位置-->
? ? ? ?<javaModelGenerator targetPackage="com.example.demo.m" targetProject="src/main/java">
? ? ? ? ? ?<property name="enableSubPackages" value="true"/>
? ? ? ? ? ?<property name="trimStrings" value="true"/>
? ? ? ?</javaModelGenerator>
? ? ? ?<!-- 生成映射文件的包名和位置-->
? ? ? ?<sqlMapGenerator targetPackage="mappers" targetProject="src/main/resources">
? ? ? ? ? ?<property name="enableSubPackages" value="true"/>
? ? ? ?</sqlMapGenerator>
? ? ? ?<!-- 生成DAO的包名和位置 -->
? ? ? ?<javaClientGenerator type="XMLMAPPER" targetPackage="com.example.demo.m" targetProject="src/main/java">
? ? ? ? ? ?<property name="enableSubPackages" value="true"/>
? ? ? ?</javaClientGenerator>
? ? ? ?<!-- 要生成的表 tableName是數(shù)據(jù)庫中的表名或視圖名 domainObjectName是實(shí)體類名-->
? ? ? ?<table tableName="t_user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false"
? ? ? ? ? ? ? enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
? ? ? ? ? ?<property name="useActualColumnNames" value="false"/>
? ? ? ? ? ?<!-- 數(shù)據(jù)庫表主鍵 -->
? ? ? ? ? ?<generatedKey column="id" sqlStatement="Mysql" identity="true"/>
? ? ? ?</table>
? ?</context>
</generatorConfiguration>
大家在使用時(shí),直接復(fù)制我這個(gè)配置文件,然后修改里面的數(shù)據(jù)庫連接以及要生成的表的 tableName就可以了。
3 第三步就是執(zhí)行命令生成代碼

生成的 User.java 文件內(nèi)容如下
生成的 UserMapper.java 文件內(nèi)容如下
生成的 UserMapper.xml 文件內(nèi)容如下

完畢
不局限于思維,不局限語言限制,才是編程的最高境界。