ITPub博客

首页 > 数据库 > 数据库开发技术 > mybatis-generator配置

mybatis-generator配置

原创 数据库开发技术 作者:yxkong 时间:2021-07-02 09:11:05 0 删除 编辑

这几天代码走查,发现generator配置文件一直在变动。classPathEntry

  <classPathEntry location="D:/Java/apache-maven-3.5.2/mysql-connector-java-5.1.46.jar"/>

由于每个人的环境的差异性,导致共同开发时,每个人都要根据自己的环境修改实际路径。

这多麻烦,这么hot的开源插件,一定有解决方案。

查看了下官网,有短的说明

http://mybatis.org/generator/running/runningWithMaven.html

根据说明配置下。

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> <!-- 引入配置文件 mybatis-generator:generate--> <properties resource="generator/generator.properties"/>
<!--classPathEntry:数据库的JDBC驱动,直接在plugin中引入依赖 --> <!-- targetRuntime 包含类型:MyBatis3、MyBatis3DynamicSql--> <context id="DB2Tables" targetRuntime="MyBatis3"> <!-- 自动识别数据库关键字,默认false,如果设置为true,根据SqlReservedWords中定义的关键字列表; 一般保留默认值,遇到数据库关键字(Java关键字),使用columnOverride覆盖 --> <property name="autoDelimitKeywords" value="true"/> <!-- 生成的Java文件的编码 --> <property name="javaFileEncoding" value="utf-8"/> <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对象名的符号,比如ORACLE就是双引号,MYSQL默认是`反引号;--> <property name="beginningDelimiter" value="`"/> <property name="endingDelimiter" value="`"/> <property name="targetJava8" value="true"/>
<!-- 格式化java代码 --> <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/> <!-- 格式化XML代码 --> <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/> <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
<plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
<!-- &lt;!&ndash; include the plugin &ndash;&gt;--> <!-- <plugin type="com.softwareloop.mybatis.generator.plugins.LombokPlugin">--> <!-- &lt;!&ndash; enable annotations &ndash;&gt;--> <!-- <property name="builder" value="false"/>--> <!-- &lt;!&ndash; annotation's option(boolean) &ndash;&gt;--> <!-- <property name="builder.fluent" value="false"/>--> <!-- &lt;!&ndash; annotation's option(String) &ndash;&gt;--> <!-- <property name="builder.builderMethodName" value="myBuilder"/>-->
<!-- <property name="accessors" value="true"/>--> <!-- &lt;!&ndash; annotation's option(array of String) &ndash;&gt;--> <!-- <property name="accessors.prefix" value="m_, _"/>-->
<!-- &lt;!&ndash; disable annotations &ndash;&gt;--> <!-- <property name="allArgsConstructor" value="false"/>--> <!-- </plugin>-->
<!-- 注释 --> <commentGenerator> <property name="suppressAllComments" value="true"/><!-- 是否取消注释 --> <property name="suppressDate" value="true"/> <!-- 是否生成注释代时间戳--> </commentGenerator>
<!-- jdbc连接 --> <jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.user}" password="${jdbc.password}"/> <!-- 类型转换 --> <javaTypeResolver> <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) --> <property name="forceBigDecimals" value="false"/> </javaTypeResolver>
<!-- 生成实体类地址--> <javaModelGenerator targetPackage="${package.model}" targetProject="${path.java}"> <property name="enableSubPackages" value="false"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- 生成mapxml文件 --> <sqlMapGenerator targetPackage="${package.xml}" targetProject="${path.resource}"> <property name="enableSubPackages" value="false"/> </sqlMapGenerator> <!-- 生成mapxml对应client,也就是接口dao MyBatis3DynamicSql和MyBatis3Kotlin 时不用管 MyBatis3时type: XMLMAPPER xml 和mapper ANNOTATEDMAPPER 注解式mapper MIXEDMAPPER 混合式 MyBatis3Simple ANNOTATEDMAPPER 注解式mapper XMLMAPPER xml 和mapper --> <javaClientGenerator targetPackage="${package.mapper}" targetProject="${path.java}" type="XMLMAPPER"> <property name="enableSubPackages" value="false"/> </javaClientGenerator> <!--生成全部表--> <!-- <table tableName="%" />-->
<!-- table可以有多个,每个数据库中的表都可以写一个table,tableName表示要匹配的数据库表,也可以在tableName属性中通过使用%通配符来匹配所有数据库表,只有匹配的表才会自动生成文件 --> <table tableName="t_account" domainObjectName="Account" enableCountByExample="false" enableSelectByPrimaryKey="true" enableUpdateByPrimaryKey="true" enableDeleteByPrimaryKey="true" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> <!-- 如果数据库字段是驼峰格式,就打开下面的配置--><!-- <property name="useActualColumnNames" value="true"/>--> <!-- 数据库表主键 --> <!--<generatedKey column="id" sqlStatement="Mysql" identity="true" />--> </table>

</context></generatorConfiguration>

generator.properties

path.java=src/main/javapath.resource=src/main/resourcespackage.model=com.yxkong.service.entity.userpackage.xml = mybatis/mapper/userpackage.mapper= com.yxkong.service.mapper.userjdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://127.0.0.1:3306/gray_user?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&serverTimezone=UTCjdbc.user=rootjdbc.password=123456

pom.xml文件

重点在这里哦。

    <build>        <plugins>          .......            <plugin>                <groupId>org.mybatis.generator</groupId>                <artifactId>mybatis-generator-maven-plugin</artifactId>                <version>1.4.0</version>                <configuration>                    <configurationFile>src/main/resources/generator/generatorConfig.xml</configurationFile>                    <verbose>true</verbose>                    <overwrite>true</overwrite>                </configuration>                <dependencies>                    <dependency>                        <groupId>mysql</groupId>                        <artifactId>mysql-connector-java</artifactId>                        <version>8.0.20</version>                    </dependency>                </dependencies>                <executions>                    <execution>                        <id>Generate MyBatis Artifacts</id>                    </execution>                </executions>            </plugin>        </plugins>    </build>

完美,又为公司的知识库丰富了些内容。

原文作者:5ycode;如有侵权,请联系管理员删除。

上一篇: mysql事务-锁
下一篇: mysql事务-MVCC
请登录后发表评论 登录
全部评论

注册时间:2021-03-26

  • 博文量
    124
  • 访问量
    71516