本文主要是介绍MyBaties根据generatorConfig配置文件生成映射文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
MyBatis是一个基于Java语言的持久层框架,它通过XML描述符或注解将对象与存储过程或SQL语句进行映射,并提供了普通SQL查询、存储过程和高级映射等操作方式,使得操作数据库变得非常方便。
如果需要使用MyBatis Generator来自动生成Java代码和MyBatis映射文件,则可以通过一下步骤来实现
添加POM插件依赖
<build><plugins><!--mybatis代码自动生成插件--><plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.7</version><configuration><!--配置文件的位置--><configurationFile>generatorConfig.xml</configurationFile><verbose>true</verbose><overwrite>true</overwrite></configuration><dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.35</version></dependency></dependencies></plugin></plugins></build>
配置generatorConfig文件
文件名称:generatorConfig.xml
存放位置:项目跟路径下
文件详情:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><generatorConfiguration><context id="mysqlTables" targetRuntime="MyBatis3"><commentGenerator><property name="suppressAllComments" value="true"/></commentGenerator><jdbcConnection driverClass="com.mysql.jdbc.Driver"connectionURL="jdbc:mysql://${ip}:3306/${database}?useUnicode=true&characterset=utf-8"userId="" password=""/><!-- <property name="autoDelimitKeywords" value="true"/>-->
<!-- <property name="beginningDelimiter" value="`"/>-->
<!-- <property name="endingDelimiter" value="`"/>--><javaTypeResolver><property name="forceBigDecimals" value="false"/></javaTypeResolver><javaModelGenerator targetPackage="com.zatech.aquarius.core.cms.domain" targetProject="MAVEN"><property name="enableSubPackages" value="true"/></javaModelGenerator><sqlMapGenerator targetPackage="com.zatech.aquarius.core.cms.dao" targetProject="MAVEN"><property name="enableSubPackages" value="true"/></sqlMapGenerator><javaClientGenerator type="XMLMAPPER" targetPackage="com.zatech.aquarius.core.cms.dao" targetProject="MAVEN"><property name="enableSubPackages" value="true"/></javaClientGenerator><table tableName="" domainObjectName="EntityDo"enableUpdateByPrimaryKey="true" enableSelectByPrimaryKey="true" enableDeleteByPrimaryKey="true"enableCountByExample="false" enableUpdateByExample="false" enableSelectByExample="false"enableDeleteByExample="false"/></context>
</generatorConfiguration>
执行指令
mvn mybatis-generator:generate
执行成功后,会在target/generated-sources下生成映射文件
常见问题
-
生成的mapper文件仅有insert方法,没有update和delete方法。
– 原因:mysql连接器(mysql-connector-java)版本太高了,使用低版本的:5.1.35。
或者在jdbcConnection节点里配置useInformationSchema属性,可以解决mybatis-generator不识别主键问题。参考文章:https://www.zdltech.com/archives/1535.html
这篇关于MyBaties根据generatorConfig配置文件生成映射文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!