Mybatis入门程序之增删改
package com.icss.po;
public class User {
private Integer userid;
private String username;
public Integer getUserid() {
return userid;
}
public void setUserid(Integer userid) {
this.userid = userid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username == null ? null : username.trim();
}
@Override
public String toString() {
return "User [userid=" + userid + ", username=" + username + "]";
}
}
package com.icss.dao;
import java.util.List;
import com.icss.po.User;
public interface UserMapper {
int deleteByPrimaryKey(Integer userid);
int insert(User record);
int insertSelective(User record);
User selectByPrimaryKey(Integer userid);
int updateByPrimaryKeySelective(User record);
int updateByPrimaryKey(User record);
}
<?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.icss.dao.UserMapper" >
<resultMap id="BaseResultMap" type="com.icss.po.User" >
<id column="userId" property="userid" jdbcType="INTEGER" />
<result column="userName" property="username" jdbcType="VARCHAR" />
</resultMap>
<sql id="Base_Column_List" >
userId, userName
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
select
<include refid="Base_Column_List" />
from tbl_user
where userId = #{userid,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
delete from tbl_user
where userId = #{userid,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.icss.po.User" >
insert into tbl_user (userId, userName)
values (#{userid,jdbcType=INTEGER}, #{username,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.icss.po.User" >
insert into tbl_user
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="userid != null" >
userId,
</if>
<if test="username != null" >
userName,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="userid != null" >
#{userid,jdbcType=INTEGER},
</if>
<if test="username != null" >
#{username,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.icss.po.User" >
update tbl_user
<set >
<if test="username != null" >
userName = #{username,jdbcType=VARCHAR},
</if>
</set>
where userId = #{userid,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.icss.po.User" >
update tbl_user
set userName = #{username,jdbcType=VARCHAR}
where userId = #{userid,jdbcType=INTEGER}
</update>
</mapper>
@Test
public void testInsertUser(){
SqlSession sqlSession =null;
try {
String resourse = "SqlMapConfig.xml";
InputStream is = Resources.getResourceAsStream(resourse);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
sqlSession = sqlSessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User record = new User();
record.setUsername("Mr_Hu");
int success = userMapper.insertSelective(record);
sqlSession.commit();
if(success == 0)
System.out.println("插入失败");
else
System.out.println("插入成功");
} catch (IOException e) {
e.printStackTrace();
}finally{
sqlSession.close();
}
}
@Test
public void testUpdateUser() {
SqlSession sqlSession =null;
try {
String resourse = "SqlMapConfig.xml";
InputStream is = Resources.getResourceAsStream(resourse);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
sqlSession = sqlSessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User record = new User();
record.setUserid(9);
record.setUsername("Mr_Deng");
int success = userMapper.updateByPrimaryKeySelective(record);
sqlSession.commit();
if(success == 0)
System.out.println("更新失败");
else
System.out.println("更新成功");
} catch (IOException e) {
e.printStackTrace();
}finally{
sqlSession.close();
}
}
@Test
public void testDeleteUser(){
SqlSession sqlSession =null;
try {
String resourse = "SqlMapConfig.xml";
InputStream is = Resources.getResourceAsStream(resourse);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
sqlSession = sqlSessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int success = userMapper.deleteByPrimaryKey(9);
sqlSession.commit();
if(success == 0)
System.out.println("删除失败");
else
System.out.println("删除成功");
} catch (IOException e) {
e.printStackTrace();
}finally{
sqlSession.close();
}
}