mybatis插件generatorConfiguration.xml配置,可直接生成实体类、dao、mapper.xml文件
新进公司没多久,发现框架当中囊括了不少的插件,以Idea作为开发工具,其中就使用到了mybatis的自动生成工具generatorConfiguration,下面我们来看看它的相关内容。
3.2 执行mybatis-generator:generate命令
1在pom.xml中做两处配置
1.1配置dependency
要使用generator插件自动生成相关文件,需要引入mybatis-generator-core这个包,在<dependencys>中加入:
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
1.2配置plugin
在 <build> 这个节点的<plugins>节点内部加入一个<plugin>,如下:
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<executions>
<execution>
<id>Generate MyBatis Files</id>
<goals>
<goal>generate</goal>
</goals>
<phase>generate</phase>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.2</version>
</dependency>
</dependencies>
</plugin>
注意:这个plugin里面又使用dependencies引入了mysql 的驱动和mybatis的相关jar包,这个不能省略。
当然,此处因人而异,有的人喜欢在plugin中一起配置,有人喜欢在plugin中只配置generator,在dependency中导包,两种方式都是可以做到的。
2创建generatorConfig.xml
2.1配置文件路径名称以及内容
在resource目录下创建generatorConfig.xml配置文件,当然了该文件起这个名字,并且放到resource根目录下是根据genereator的默认方案来的,如果要用别的名,放到别的目录也可以,只是要做其它配置,这里就按默认算了,该文件的配置内容如下:
<?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="init.properties"/>
<!-- 指定数据连接驱动jar地址 -->
<classPathEntry location="${classPath}" />
<!-- 一个数据库一个context -->
<context id="infoGuardian">
<!-- 注释 -->
<commentGenerator >
<property name="suppressAllComments" value="false"/><!-- 是否取消注释 -->
<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="com.oop.eksp.user.model"
targetProject="${project}" >
<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
<property name="enableSubPackages" value="false"/>
<!-- 是否针对string类型的字段在set的时候进行trim调用 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成mapxml文件 -->
<sqlMapGenerator targetPackage="com.oop.eksp.user.data"
targetProject="${project}" >
<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- 生成mapxml对应client,也就是接口dao -->
<javaClientGenerator targetPackage="com.oop.eksp.user.data"
targetProject="${project}" type="XMLMAPPER" >
<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 配置表信息 -->
<table schema="${jdbc_user}" tableName="s_user"
domainObjectName="UserEntity" enableCountByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
enableUpdateByExample="false">
<!-- schema即为数据库名 tableName为对应的数据库表 domainObjectName是要生成的实体类 enable*ByExample
是否生成 example类 -->
<!-- 忽略列,不生成bean 字段 -->
<ignoreColumn column="FRED" />
<!-- 指定列的java数据类型 -->
<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />
</table>
</context>
</generatorConfiguration>
2.2其它说明
上面的这个配置文件用到了init.properties这个路径,该文件主要是配置连接mysql数据库的一些参数,例如存放位置是/springmybatis/src/main/resources/init.properties
3.项目执行方式
生成对象的两种方式
方式一:使用idea的maven插件直接快速生成
在完成以上两步之后。就会在idea中看到:直接点击mybatis-generator:generate就可生成。
方式二:在Intellij IDEA添加一个“Run运行”选项,使用maven运行mybatis-generator-maven-plugin插件 :
Step1:选择配置edit configuration
Step2:创建maven运行项
Step3:配置命令 mybatis-generator:generate -e
Step4:运行
做完以上几步。就可以看到运行的选项。点击运行即可。
详细的配置文档可以参考下面的链接内容 Mybatis Generator最完整配置详解
上一篇: Matlab中2D绘图基础语法
下一篇: 虚拟机:Centos 7 安装JDK8