mybaties有个插件mybatis-generagtor可以自动生成实体,mapper,mapper映射文件
以下案例为实际开发中运用
环境:eclipse4.5+mysql1.5+maven
1.数据库表:

2.maven配置mybatis-generator插件:在工程的pom文件中添加:
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin>
3.在resource下配置文件:

generator.properties 数据库信息
driver.class.path=E:/maven/repo_garden/mysql/mysql-connector-java/5.1.21/mysql-connector-java-5.1.21.jar jdbc.url=jdbc:mysql://106.15.35.211:53306/biguiyuan?useUnicode=true&characterEncoding=UTF-8&relaxAutoCommit=true&zeroDateTimeBehavior=convertToNull jdbc.driver=com.mysql.jdbc.Driver jdbc.username=root jdbc.password=qjbbc123 package.model=com.qianjiang.config.bean package.mapper.java=com.qianjiang.config.mapper package.mapper.xml=mybatis.member.mapper.configMapper target.project=src/main/java target.resources=src/main/resources
generatorConfig.xml 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>
<!--导入数据库连接属性配置 -->
<properties resource="generator.properties"/>
<!--指定特定数据库的jdbc驱动jar包的位置(本地仓库mysql驱动所在位置) -->
<classPathEntry location="${driver.class.path}"/>
<!-- 配置数据源和生成的代码所存放的位置 -->
<context id="default" targetRuntime="MyBatis3" defaultModelType="flat">
<property name="beginningDelimiter" value="`" />
<property name="endingDelimiter" value="`" />
<!--是否去除自动生成的注释 true:是 : false:否 -->
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--jdbc的数据库连接 -->
<jdbcConnection driverClass="${jdbc.driver}"
connectionURL="${jdbc.url}"
userId="${jdbc.username}"
password="${jdbc.password}">
</jdbcConnection>
<!--
true:使用BigDecimal对应DECIMAL和 NUMERIC数据类型
false:默认,
scale>0;length>18:使用BigDecimal;
scale=0;length[10,18]:使用Long;
scale=0;length[5,9]:使用Integer;
scale=0;length<5:使用Short;
-->
<javaTypeResolver>
<property name="forceBigDecimals" value="true"/>
</javaTypeResolver>
<!-- 生成模型的包名和位置-->
<javaModelGenerator targetPackage="${package.model}" targetProject="${target.project}">
<!-- 是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="true"/>
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成映射文件的包名和位置 -->
<!--Mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
<sqlMapGenerator targetPackage="${package.mapper.xml}" targetProject="${target.resources}">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!-- 生成DAO的包名和位置-->
<javaClientGenerator targetPackage="${package.mapper.java}" targetProject="${target.project}" type="XMLMAPPER">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<!-- tableName:用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 -->
<table tableName="t_config" domainObjectName="Config"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
<property name="useActualColumnNames" value="false" />
<!-- <generatedKey column="id" sqlStatement="Mysql"/> -->
</table>
</context>
</generatorConfiguration>
4.生成代码:右击选择pom.xml文件然后Run As–Maven build…在Goals框中输入:mybatis-generator:generate 如下截图:

5.自此代码自动生成完成。


选择项目 按 F5 刷新项目 出现生成的代码。
注意:默认设置会生成一大堆罗哩罗嗦的Example类,主要是用各种不同的条件来操作数据库,大部分是用不到的
可通过以下配置取消Example

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/11205.html