林炳文Evankaka原创作品。转载请注明出处https://blog.csdn.net/Evankaka/article/details/47023955
摘要:本文将简要介绍怎样利用Mybatis Generator自动生成Mybatis的相关代码,Mybatis Generator是一个非常好用的工具,使用它可以大大节省开发的时间,并减少代码的编写量。
一、构建一个环境
1. 首先创建一个表:
-
CREATE
TABLE
-
t_user
-
(
-
USER_ID
INT
NOT
NULL AUTO_INCREMENT,
-
USER_NAME
CHAR(
30)
NOT
NULL,
-
USER_PASSWORD
CHAR(
10)
NOT
NULL,
-
USER_EMAIL
CHAR(
30)
NOT
NULL,
-
PRIMARY
KEY (USER_ID)
-
)
-
ENGINE=
InnoDB
DEFAULT
CHARSET=utf8;
2. 在 Mybatis 主页 http://code.google.com/p/mybatis/ 上下载 Mybatis mybatis-generator-core 或者在这里下载:http://download.csdn.net/detail/evankaka/8926999
二、xml文件编写
1、新建一个工程。然后新建如下包,都是空的
2、然后新建generator.xmll文件
内容如下:
-
<?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:数据库的JDBC驱动的jar包地址 -->
-
<classPathEntry location="D:\Java\Jar\mysql-connector-java-5.1.22\mysql-connector-java-5.1.22-bin.jar" />
-
<context id="DB2Tables" targetRuntime="MyBatis3">
-
<commentGenerator>
-
<!-- 抑制警告 -->
-
<property name="suppressTypeWarnings" value="true" />
-
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
-
<property name="suppressAllComments" value="false" />
-
<!-- 是否生成注释代时间戳-->
-
<property name="suppressDate" value="true" />
-
</commentGenerator>
-
-
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
-
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
-
connectionURL=
"jdbc:mysql://localhost/learning"
userId=
"root"
-
password=
"christmas258@">
-
</jdbcConnection>
-
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer true,把JDBC DECIMAL 和
-
NUMERIC 类型解析为java.math.BigDecimal -->
-
<!-- <javaTypeResolver>
-
<property name="forceBigDecimals" value="false" />
-
</javaTypeResolver> -->
-
<!--生成Model类存放位置 -->
-
<javaModelGenerator targetPackage="com.lin.domain"
-
targetProject=
"D:\lunaJee-workspace\MyBatisLearningChapter7\src">
-
<!-- 是否在当前路径下新加一层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>
-
<!--生成映射文件存放位置 -->
-
<sqlMapGenerator targetPackage="com.lin.mapper"
-
targetProject=
"D:\lunaJee-workspace\MyBatisLearningChapter7\src">
-
<property name="enableSubPackages" value="true" />
-
</sqlMapGenerator>
-
<!--生成Dao类存放位置 -->
-
<javaClientGenerator type="XMLMAPPER"
-
targetPackage=
"com.lin.dao"
targetProject=
"D:\lunaJee-workspace\MyBatisLearningChapter7\src">
-
<property name="enableSubPackages" value="true" />
-
</javaClientGenerator>
-
-
-
<!-- tableName:用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 -->
-
<table schema="general" tableName="T_USER" domainObjectName="User">
-
<!--domain字段的命名规则,false:默认为驼峰命名 true:按数据库真实命名 -->
-
<property name="useActualColumnNames" value="false"/>
-
<!-- 忽略列,不生成bean 字段 -->
-
<!-- <ignoreColumn column="FRED" /> -->
-
<!-- 指定列的java数据类型 -->
-
<!-- <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" /> -->
-
</table>
-
</context>
-
</generatorConfiguration>
三、自动代码生成
自动代码生成有4种方法
1、直接cmd下命令行生成
命令如下:java -jar 电脑上mybatis-generator-core-1.3.0.jar的绝对路径 -configfile 电脑上generator.xml的绝对路径,这里的generator.xml不一定要放在工程的src文件中。
如我的这个项目就是:
运行的结果如下:
然后在eclipse中刷新一下:结果出来了
看看各个文件
(1)User.java
-
package com.lin.domain;
-
-
public
class User {
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database column t_user.USER_ID
-
*
-
* @mbggenerated
-
*/
-
private Integer userId;
-
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database column t_user.USER_NAME
-
*
-
* @mbggenerated
-
*/
-
private String userName;
-
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database column t_user.USER_PASSWORD
-
*
-
* @mbggenerated
-
*/
-
private String userPassword;
-
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database column t_user.USER_EMAIL
-
*
-
* @mbggenerated
-
*/
-
private String userEmail;
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method returns the value of the database column t_user.USER_ID
-
*
-
* @return the value of t_user.USER_ID
-
*
-
* @mbggenerated
-
*/
-
public Integer getUserId() {
-
return userId;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method sets the value of the database column t_user.USER_ID
-
*
-
* @param userId the value for t_user.USER_ID
-
*
-
* @mbggenerated
-
*/
-
public void setUserId(Integer userId) {
-
this.userId = userId;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method returns the value of the database column t_user.USER_NAME
-
*
-
* @return the value of t_user.USER_NAME
-
*
-
* @mbggenerated
-
*/
-
public String getUserName() {
-
return userName;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method sets the value of the database column t_user.USER_NAME
-
*
-
* @param userName the value for t_user.USER_NAME
-
*
-
* @mbggenerated
-
*/
-
public void setUserName(String userName) {
-
this.userName = userName ==
null ?
null : userName.trim();
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method returns the value of the database column t_user.USER_PASSWORD
-
*
-
* @return the value of t_user.USER_PASSWORD
-
*
-
* @mbggenerated
-
*/
-
public String getUserPassword() {
-
return userPassword;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method sets the value of the database column t_user.USER_PASSWORD
-
*
-
* @param userPassword the value for t_user.USER_PASSWORD
-
*
-
* @mbggenerated
-
*/
-
public void setUserPassword(String userPassword) {
-
this.userPassword = userPassword ==
null ?
null : userPassword.trim();
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method returns the value of the database column t_user.USER_EMAIL
-
*
-
* @return the value of t_user.USER_EMAIL
-
*
-
* @mbggenerated
-
*/
-
public String getUserEmail() {
-
return userEmail;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method sets the value of the database column t_user.USER_EMAIL
-
*
-
* @param userEmail the value for t_user.USER_EMAIL
-
*
-
* @mbggenerated
-
*/
-
public void setUserEmail(String userEmail) {
-
this.userEmail = userEmail ==
null ?
null : userEmail.trim();
-
}
-
}
UserExample.java这个文件可以控制是否生成
-
package com.lin.domain;
-
-
import java.util.ArrayList;
-
import java.util.List;
-
-
public
class UserExample {
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
protected String orderByClause;
-
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
protected
boolean distinct;
-
-
/**
-
* This field was generated by MyBatis Generator.
-
* This field corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
protected List<Criteria> oredCriteria;
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public UserExample() {
-
oredCriteria =
new ArrayList<Criteria>();
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public void setOrderByClause(String orderByClause) {
-
this.orderByClause = orderByClause;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public String getOrderByClause() {
-
return orderByClause;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public void setDistinct(boolean distinct) {
-
this.distinct = distinct;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public boolean isDistinct() {
-
return distinct;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public List<Criteria> getOredCriteria() {
-
return oredCriteria;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public void or(Criteria criteria) {
-
oredCriteria.add(criteria);
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public Criteria or() {
-
Criteria criteria = createCriteriaInternal();
-
oredCriteria.add(criteria);
-
return criteria;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public Criteria createCriteria() {
-
Criteria criteria = createCriteriaInternal();
-
if (oredCriteria.size() ==
0) {
-
oredCriteria.add(criteria);
-
}
-
return criteria;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
protected Criteria createCriteriaInternal() {
-
Criteria criteria =
new Criteria();
-
return criteria;
-
}
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public void clear() {
-
oredCriteria.clear();
-
orderByClause =
null;
-
distinct =
false;
-
}
-
-
/**
-
* This class was generated by MyBatis Generator.
-
* This class corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
protected
abstract
static
class GeneratedCriteria {
-
protected List<Criterion> criteria;
-
-
protected GeneratedCriteria() {
-
super();
-
criteria =
new ArrayList<Criterion>();
-
}
-
-
public boolean isValid() {
-
return criteria.size() >
0;
-
}
-
-
public List<Criterion> getCriteria() {
-
return criteria;
-
}
-
-
protected void addCriterion(String condition) {
-
if (condition ==
null) {
-
throw
new RuntimeException(
"Value for condition cannot be null");
-
}
-
criteria.add(
new Criterion(condition));
-
}
-
-
protected void addCriterion(String condition, Object value, String property) {
-
if (value ==
null) {
-
throw
new RuntimeException(
"Value for " + property +
" cannot be null");
-
}
-
criteria.add(
new Criterion(condition, value));
-
}
-
-
protected void addCriterion(String condition, Object value1, Object value2, String property) {
-
if (value1 ==
null || value2 ==
null) {
-
throw
new RuntimeException(
"Between values for " + property +
" cannot be null");
-
}
-
criteria.add(
new Criterion(condition, value1, value2));
-
}
-
-
public Criteria andUserIdIsNull() {
-
addCriterion(
"USER_ID is null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdIsNotNull() {
-
addCriterion(
"USER_ID is not null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdEqualTo(Integer value) {
-
addCriterion(
"USER_ID =", value,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdNotEqualTo(Integer value) {
-
addCriterion(
"USER_ID <>", value,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdGreaterThan(Integer value) {
-
addCriterion(
"USER_ID >", value,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdGreaterThanOrEqualTo(Integer value) {
-
addCriterion(
"USER_ID >=", value,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdLessThan(Integer value) {
-
addCriterion(
"USER_ID <", value,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdLessThanOrEqualTo(Integer value) {
-
addCriterion(
"USER_ID <=", value,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdIn(List<Integer> values) {
-
addCriterion(
"USER_ID in", values,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdNotIn(List<Integer> values) {
-
addCriterion(
"USER_ID not in", values,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdBetween(Integer value1, Integer value2) {
-
addCriterion(
"USER_ID between", value1, value2,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserIdNotBetween(Integer value1, Integer value2) {
-
addCriterion(
"USER_ID not between", value1, value2,
"userId");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameIsNull() {
-
addCriterion(
"USER_NAME is null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameIsNotNull() {
-
addCriterion(
"USER_NAME is not null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameEqualTo(String value) {
-
addCriterion(
"USER_NAME =", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameNotEqualTo(String value) {
-
addCriterion(
"USER_NAME <>", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameGreaterThan(String value) {
-
addCriterion(
"USER_NAME >", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameGreaterThanOrEqualTo(String value) {
-
addCriterion(
"USER_NAME >=", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameLessThan(String value) {
-
addCriterion(
"USER_NAME <", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameLessThanOrEqualTo(String value) {
-
addCriterion(
"USER_NAME <=", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameLike(String value) {
-
addCriterion(
"USER_NAME like", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameNotLike(String value) {
-
addCriterion(
"USER_NAME not like", value,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameIn(List<String> values) {
-
addCriterion(
"USER_NAME in", values,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameNotIn(List<String> values) {
-
addCriterion(
"USER_NAME not in", values,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameBetween(String value1, String value2) {
-
addCriterion(
"USER_NAME between", value1, value2,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserNameNotBetween(String value1, String value2) {
-
addCriterion(
"USER_NAME not between", value1, value2,
"userName");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordIsNull() {
-
addCriterion(
"USER_PASSWORD is null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordIsNotNull() {
-
addCriterion(
"USER_PASSWORD is not null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordEqualTo(String value) {
-
addCriterion(
"USER_PASSWORD =", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordNotEqualTo(String value) {
-
addCriterion(
"USER_PASSWORD <>", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordGreaterThan(String value) {
-
addCriterion(
"USER_PASSWORD >", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordGreaterThanOrEqualTo(String value) {
-
addCriterion(
"USER_PASSWORD >=", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordLessThan(String value) {
-
addCriterion(
"USER_PASSWORD <", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordLessThanOrEqualTo(String value) {
-
addCriterion(
"USER_PASSWORD <=", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordLike(String value) {
-
addCriterion(
"USER_PASSWORD like", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordNotLike(String value) {
-
addCriterion(
"USER_PASSWORD not like", value,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordIn(List<String> values) {
-
addCriterion(
"USER_PASSWORD in", values,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordNotIn(List<String> values) {
-
addCriterion(
"USER_PASSWORD not in", values,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordBetween(String value1, String value2) {
-
addCriterion(
"USER_PASSWORD between", value1, value2,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserPasswordNotBetween(String value1, String value2) {
-
addCriterion(
"USER_PASSWORD not between", value1, value2,
"userPassword");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailIsNull() {
-
addCriterion(
"USER_EMAIL is null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailIsNotNull() {
-
addCriterion(
"USER_EMAIL is not null");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailEqualTo(String value) {
-
addCriterion(
"USER_EMAIL =", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailNotEqualTo(String value) {
-
addCriterion(
"USER_EMAIL <>", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailGreaterThan(String value) {
-
addCriterion(
"USER_EMAIL >", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailGreaterThanOrEqualTo(String value) {
-
addCriterion(
"USER_EMAIL >=", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailLessThan(String value) {
-
addCriterion(
"USER_EMAIL <", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailLessThanOrEqualTo(String value) {
-
addCriterion(
"USER_EMAIL <=", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailLike(String value) {
-
addCriterion(
"USER_EMAIL like", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailNotLike(String value) {
-
addCriterion(
"USER_EMAIL not like", value,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailIn(List<String> values) {
-
addCriterion(
"USER_EMAIL in", values,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailNotIn(List<String> values) {
-
addCriterion(
"USER_EMAIL not in", values,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailBetween(String value1, String value2) {
-
addCriterion(
"USER_EMAIL between", value1, value2,
"userEmail");
-
return (Criteria)
this;
-
}
-
-
public Criteria andUserEmailNotBetween(String value1, String value2) {
-
addCriterion(
"USER_EMAIL not between", value1, value2,
"userEmail");
-
return (Criteria)
this;
-
}
-
}
-
-
/**
-
* This class was generated by MyBatis Generator.
-
* This class corresponds to the database table t_user
-
*
-
* @mbggenerated do_not_delete_during_merge
-
*/
-
public
static
class Criteria extends GeneratedCriteria {
-
-
protected Criteria() {
-
super();
-
}
-
}
-
-
/**
-
* This class was generated by MyBatis Generator.
-
* This class corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
public
static
class Criterion {
-
private String condition;
-
-
private Object value;
-
-
private Object secondValue;
-
-
private
boolean noValue;
-
-
private
boolean singleValue;
-
-
private
boolean betweenValue;
-
-
private
boolean listValue;
-
-
public String getCondition() {
-
return condition;
-
}
-
-
public Object getValue() {
-
return value;
-
}
-
-
public Object getSecondValue() {
-
return secondValue;
-
}
-
-
public boolean isNoValue() {
-
return noValue;
-
}
-
-
public boolean isSingleValue() {
-
return singleValue;
-
}
-
-
public boolean isBetweenValue() {
-
return betweenValue;
-
}
-
-
public boolean isListValue() {
-
return listValue;
-
}
-
-
protected Criterion(String condition) {
-
super();
-
this.condition = condition;
-
this.noValue =
true;
-
}
-
-
protected Criterion(String condition, Object value) {
-
super();
-
this.condition = condition;
-
this.value = value;
-
if (value
instanceof List<?>) {
-
this.listValue =
true;
-
}
else {
-
this.singleValue =
true;
-
}
-
}
-
-
protected Criterion(String condition, Object value, Object secondValue) {
-
super();
-
this.condition = condition;
-
this.value = value;
-
this.secondValue = secondValue;
-
this.betweenValue =
true;
-
}
-
}
-
}
(2)dao层文件。它自动取名为UserMapper.java,可以自己手动写成UserDao.java
-
package com.lin.dao;
-
-
import com.lin.domain.User;
-
import com.lin.domain.UserExample;
-
import java.util.List;
-
import org.apache.ibatis.annotations.Param;
-
-
public
interface UserMapper {
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int countByExample(UserExample example);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int deleteByExample(UserExample example);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int deleteByPrimaryKey(Integer userId);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int insert(User record);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int insertSelective(User record);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
List<User> selectByExample(UserExample example);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
User selectByPrimaryKey(Integer userId);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int updateByExampleSelective(@Param("record") User record, @Param("example") UserExample example);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int updateByExample(@Param("record") User record, @Param("example") UserExample example);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int updateByPrimaryKeySelective(User record);
-
-
/**
-
* This method was generated by MyBatis Generator.
-
* This method corresponds to the database table t_user
-
*
-
* @mbggenerated
-
*/
-
int updateByPrimaryKey(User record);
-
}
(3)Mapper.xml文件:
-
<?xml version="1.0" encoding="UTF-8" ?>
-
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-
<mapper namespace="com.lin.dao.UserMapper" >
-
<resultMap id="BaseResultMap" type="com.lin.domain.User" >
-
<!--
-
WARNING - @mbggenerated
-
This element is automatically generated by MyBatis Generator, do not modify.
-
-->
-
<id column="USER_ID" property="userId" jdbcType="INTEGER" />
-
<result column="USER_NAME" property="userName" jdbcType="CHAR" />
-
<result column="USER_PASSWORD" property="userPassword" jdbcType="CHAR" />
-
<result column="USER_EMAIL" property="userEmail" jdbcType="CHAR" />
-
</resultMap>
-
<sql id="Example_Where_Clause" >
-
<!--
-
WARNING - @mbggenerated
-
This element is automatically generated by MyBatis Generator, do not modify.
-
-->
-
<where >
-
<foreach collection="oredCriteria" item="criteria" separator="or" >
-
<if test="criteria.valid" >
-
<trim prefix="(" suffix=")" prefixOverrides="and" >
-
<foreach collection="criteria.criteria" item="criterion" >
-
<choose >
-
<when test="criterion.noValue" >
-
and ${criterion.condition}
-
</when>
-
<when test="criterion.singleValue" >
-
and ${criterion.condition} #{criterion.value}
-
</when>
-
<when test="criterion.betweenValue" >
-
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
-
</when>
-
<when test="criterion.listValue" >
-
and ${criterion.condition}
-
<foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
-
#{listItem}
-
</foreach>
-
</when>
-
</choose>
-
</foreach>
-
</trim>
-
</if>
-
</foreach>
-
</where>
-
</sql>
-
<sql id="Update_By_Example_Where_Clause" >
-
<!--
-
WARNING - @mbggenerated
-
This element is automatically generated by MyBatis Generator, do not modify.
-
-->
-
<where >
-
<foreach collection="example.oredCriteria" item="criteria" separator="or" >
-
<if test="criteria.valid" >
-
<trim prefix="(" suffix=")" prefixOverrides="and" >
-
<foreach collection="criteria.criteria" item="criterion" >
-
<choose >
-
<when test="criterion.noValue" >
-
and ${criterion.condition}
-
</when>
-
<when test="criterion.singleValue" >
-
and ${criterion.condition} #{criterion.value}
-
</when>
-
<when test="criterion.betweenValue" >
-
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
-
</when>
-
<when test="criterion.listValue" >
-
and ${criterion.condition}
-
<foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
-
#{listItem}
-
</foreach>
-
</when>
-
</choose>
-
</foreach>
-
</trim>
-
</if>
-
</foreach>
-
</where>
-
</sql>
-
<sql id="Base_Column_List" >
-
<!--
-
WARNING - @mbggenerated
-
This element is automatically generated by MyBatis Generator, do not modify.
-
-->
-
USER_ID, USER_NAME, USER_PASSWORD, USER_EMAIL
-
</sql>
-
<select id="selectByExample" resultMap="BaseResultMap" parameterType="com.lin.domain.UserExample" >
-
<!--
-
WARNING - @mbggenerated
-
This element is automatically generated by MyBatis Generator, do not modify.
-
-->
-
select
-
<if test="distinct" >
-
distinct
-
</if>
-
<include refid="Base_Column_List" />
-
from t_user
-
<if test="_parameter != null" >
-
<include refid="Example_Where_Clause" />
-
</if>
-
<if test="orderByClause != null" >
-
order by ${orderByClause}
-
</if>
-
</select>
-
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
-
<!--
-