添加用户
添加成功后返回用户ID
配置mapper01.xml
<selectKey keyProperty="id" keyColumn="id" resultType="int" order="AFTER">
select last_insert_id()
</selectKey>
insert into tb_user(username,password) values(#{username},#{password})
</insert>
dao层:
@Override
public int addUser(User user) throws Exception {
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("SqlMapConfig.xml"));
SqlSession sqlSession = sqlSessionFactory.openSession();
//默认返回一个int类型的值,影响的记录的行数
int addUser = sqlSession.insert("addUser", user);
System.out.println(addUser);
sqlSession.commit();
sqlSession.close();
return addUser;
}
代码测试:
@Test
public void addUser1() throws Exception {
UserDao userDao = new UserDaoImpl();
User user = new User();
user.setName("李一");
user.setPassword("234543");
user.setScore(78);
System.out.println("之前 id" + user.getId());
userDao.addUser1(user);
System.out.println("之后 id" + user.getId());
}
删除用户
配置mapper01.xml
<insert id="deleteUserById" parameterType="int">
delete from user where id = #{id}
</insert>
dao层:
@Override
public void deleteUserById(int id) throws Exception {
SqlSession sqlSession = sqlSessionFactory.openSession();
sqlSession.delete("deleteUserById",id);
sqlSession.commit();
sqlSession.close();
}
代码测试:
@Test
public void deleteUserById() throws Exception {
UserDao userDao = new UserDaoImpl(sqlSessionFactory);
userDao.deleteUserById(22);
}
修改用户
配置mapper01.xml
<insert id="updateUser" parameterType="com.wl.bean.User">
update user set name = #{name}, password = #{password},score = #{score} where id = #{id}
</insert>
dao层:
@Override
public void updateUser(User user) throws Exception {
SqlSession sqlSession = sqlSessionFactory.openSession();
sqlSession.update("updateUser",user);
sqlSession.commit();
sqlSession.close();
}
代码测试:
@Test
public void updateUser() throws Exception {
UserDao userDao = new UserDaoImpl(sqlSessionFactory);
userDao.updateUser(new User(23,"lier","33333",22));
}