前两天有用到,mybatis新增时用list传递参数,感觉mapper也很强大。废话不多说,直接上代码。
用户类:(userId我在数据库中定义成主键自增,所以在mapper中不用赋值)
/*用户实体类*/
public class UserEntity {
/*用户ID*/
private int userId;
/*用户名*/
private String userName;
/*用户密码*/
private String userPassword;
/*用户昵称*/
private String userNickName;
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
public String getUserNickName() {
return userNickName;
}
public void setUserNickName(String userNickName) {
this.userNickName = userNickName;
}
@Override
public String toString() {
return "UserEntity{" +
"userId=" + userId +
", userName='" + userName + '\'' +
", userPassword='" + userPassword + '\'' +
", userNickName='" + userNickName + '\'' +
'}';
}
}
用户Dao层:
/**用户注册持久层*/
public interface UserDao {
/*向表中写入数据*/
int insertObject(List list);
}
下面就是最重要的userMapper:
<?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.blbb.web.user.dao.UserDao">
<!--执行写入数据操作-->
<insert id="insertObject"
parameterType="java.util.List">
INSERT INTO user (
user_name,
user_password,
user_nickname
)VALUES
<foreach collection="list" item="item" index="index" separator=",">
(
#{item.userName,jdbcType=VARCHAR},
#{item.userPassword,jdbcType=VARCHAR},
#{item.userNickName,jdbcType=VARCHAR}
)
</foreach>
</insert>
</mapper>
这是我们常用的数据类型在mybatis中jdbc的对应类型
JDBC Type Java Type
CHAR String
VARCHAR String
LONGVARCHAR String
NUMERIC java.math.BigDecimal
DECIMAL java.math.BigDecimal
BIT boolean
BOOLEAN boolean
TINYINT byte
SMALLINT short
INTEGER int
BIGINT long
REAL float
FLOAT double
DOUBLE double
BINARY byte[]
VARBINARY byte[]
LONGVARBINARY byte[]
DATE java.sql.Date
TIME java.sql.Time
TIMESTAMP java.sql.Timestamp
CLOB Clob
BLOB Blob
ARRAY Array
DISTINCT mapping of underlying type
STRUCT Struct
REF Ref
DATALINK java.net.URL[color=red][/color]