|
在Eclipse自动生成Mybatis数据库操作文件有两种办法,一种是按照Mybatis-generator插件,这种方法在此不描述了;另外一种是在工程中引入Mybatis-generator的相关jar包,并编写generatorConfig.xml文件,已maven的方式运行即可。相关的配置操作如下。
1.在pom.xml中进行mybatis的配置
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
</configuration>
</plugin>
2.编写generatorConfig.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 >
<classPathEntry location="classpath*:ojdbc6.jar"/>
<context id="context1">
<commentGenerator>
<property name="suppressDate" value="true" />
<property name="suppressAllComments" value="true" />
</commentGenerator>
<jdbcConnection driverClass="oracle.jdbc.OracleDriver"
connectionURL="jdbc:oracle:thin:@localhost:1521:ora12c"
userId="demo" password="demo" />
<javaModelGenerator targetPackage="com.demo.entity" targetProject="src/main/java" >
<property name="enableSubPackages" value="false" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<sqlMapGenerator targetPackage="com.demo.dao" targetProject="src/main/java" >
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<javaClientGenerator targetPackage="com.demo.dao"
targetProject="src/main/java" type="XMLMAPPER" >
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<table schema="" tableName="USER" domainObjectName="UserEntity"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
<generatedKey column="" sqlStatement="Oracle" identity="true" />
</table>
</context>
</generatorConfiguration>
3.运行generatorConfig.xml
右键点击generatorConfig.xml文件,选择“Run As">"Run Configurations…"弹出运行配置框,选中左侧树形结构的”Maven Build"右键点击,在弹出的菜单中选择new,新建一个maven的配置,在“Name:”处输入“osms-dao-mybatis-generator”,在“Base Directory”处输入“${project_loc:osms-dao}”,在”Goals“处输入“mybatis-generator:generate”,点击run即可。整个操作入下图。


运行输出如下
[INFO] ---------------------< com.demo:osms-dao >----------------------
[INFO] Building DemoPrj 1.0.0
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- mybatis-generator-maven-plugin:1.3.2:generate (default-cli) @ osms-dao ---
[INFO] Connecting to the Database
[INFO] Introspecting table USER
[INFO] Generating Record class for table USER
[INFO] Generating Mapper Interface for table USER
[INFO] Generating SQL Map for table USER
[INFO] Saving file UserEntityMapper.xml
[INFO] Saving file UserEntity.java
[INFO] Saving file UserEntityMapper.java
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.283 s
[INFO] Finished at: 2019-03-29T09:56:13+08:00
[INFO] ------------------------------------------------------------------------
###4.generatorConfig.xml最全样例
下面的mybatis-generator自动生成数据库类的最全的属性介绍摘自 “简书”,其网址为https://www.jianshu.com/p/e09d2370b796:如下
<?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="mysql" defaultModelType="hierarchical" targetRuntime="MyBatis3Simple" >
<property name="autoDelimitKeywords" value="false"/>
<property name="javaFileEncoding" value="UTF-8"/>
<property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
<property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
<property name="beginningDelimiter" value="`"/>
<property name="endingDelimiter" value="`"/>
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql:///pss" userId="root" password="admin">
</jdbcConnection>
<javaTypeResolver type="org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl">
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<javaModelGenerator targetPackage="com._520it.mybatis.domain" targetProject="src/main/java">
<property name="constructorBased" value="false"/>
<property name="enableSubPackages" value="true"/>
<property name="immutable" value="false"/>
<property name="rootClass" value="com._520it.mybatis.domain.BaseDomain"/>
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<sqlMapGenerator targetPackage="com._520it.mybatis.mapper" targetProject="src/main/resources">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<javaClientGenerator targetPackage="com._520it.mybatis.mapper" type="ANNOTATEDMAPPER" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<table tableName="userinfo" >
<property name="constructorBased" value="false"/>
<property name="ignoreQualifiersAtRuntime" value="false"/>
<property name="immutable" value="false"/>
<property name="modelOnly" value="false"/>
<property name="selectAllOrderByClause" value="age desc,username asc"/>
<property name="useActualColumnNames" value="false"/>
<columnOverride column="username">
<property name="property" value="userName"/>
</columnOverride>
</table>
</context>
</generatorConfiguration>
|