mybatis-generator介绍
mybatis-generator通过丰富的配置可以生成不同类型的代码,代码包含了
数据库表对应的实体类、Mapper接口类、Mapper.xml映射文件和Example对象
这些代码中几乎包含了全部的单表操作,可以减少很多重复工作。
1、创建generatorConfig.xml文件,以及配置的介绍
<generatorConfiguration>
<properties resource="generatorConfig.properties"/>
<context id="testTables" targetRuntime="MyBatis3"
defaultModelType="flat">
<property name="beginningDelimiter" value="'"/>
<property name="endingDelimiter" value="'"/>
<commentGenerator>
<property name="suppressAllComments" value="true" />
<property name="addRemarkComments" value="true"/>
commentGenerator>
<jdbcConnection driverClass="${jdbc.driverClass}"
connectionURL="${jdbc.jdbcUrl}"
userId="${jdbc.user}"
password="${jdbc.password}">
jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
javaTypeResolver>
<javaModelGenerator targetPackage="${pojoTargetPackage}"
targetProject="${targetProject}">
<property name="enableSubPackages" value="false" />
<property name="trimStrings" value="true" />
javaModelGenerator>
<sqlMapGenerator targetPackage="${xmlTargetPackage}"
targetProject="${targetProject}">
<property name="enableSubPackages" value="false" />
sqlMapGenerator>
<javaClientGenerator type="XMLMAPPER"
targetPackage="${mapperTargetPackage}"
targetProject="${targetProject}">
<property name="enableSubPackages" value="false" />
javaClientGenerator>
<table tableName="user" domainObjectName="User">
<generatedKey column="id" sqlStatement="MySql"/>
table>
<table tableName="orders" domainObjectName="Oeders">table>
context>
generatorConfiguration>
2、创建generatorConfig.properties属性文件,
#mysql
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/mybatis
jdbc.user=root
jdbc.password=root
#指定项目路径
targetProject=src/main/java
#存放实体类的包名
pojoTargetPackage=com.wxx.pojo
#存放Mapper接口的包名
mapperTargetPackage=com.wxx.mapper
#存放Mapper.xml的包名
xmlTargetPackage=com.wxx.mapper
3、在pom.xml文件下添加mybatis-generator依赖
<dependency>
<groupId>org.mybatis.generatorgroupId>
<artifactId>mybatis-generator-coreartifactId>
<version>1.3.7version>
dependency>
<dependency>
<groupId>org.mybatis.generatorgroupId>
<artifactId>mybatis-generator-maven-pluginartifactId>
<version>1.3.7version>
dependency>
4、在pom.xml文件添加插件配置
<plugin>
<groupId>org.mybatis.generatorgroupId>
<artifactId>mybatis-generator-maven-pluginartifactId>
<version>1.3.7version>
<dependencies>
<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<version>5.1.32version>
dependency>
dependencies>
<configuration>
<configurationFile>${basedir}/src/main/resources/generatorConfig.xmlconfigurationFile>
<overwrite>trueoverwrite>
configuration>
plugin>
5、执行maven命令 mvn mybatis-generator:generate
当前项目必须执行过mvn install命令,将当前项目安装到本地仓库,否则会
找不到当前项目的依赖。
在pom.xml文件中邮件Run AS ->Maven build选项
执行成功,刷新项目,可以看到生成的代码
7、代码测试
Example封装查询条件
private UserMapper mapper;
//查询所有用户信息
public List findUsers() {
return mapper.selectByExample(null);
}
public List<User> findUsersByCondition(String userName, String sex) {
//封装用户查询条件的Example
UserExample example = new UserExample();
//创建Criteria,用来封装查询条件
Criteria criteria = example.createCriteria();
criteria.andUserNameLike("%"+userName+"%");
criteria.andSexEqualTo(sex);
return mapper.selectByExample(example);
}