Java框架學習_Mybatis(四)(改、刪)修改使用者資訊、刪除使用者
阿新 • • 發佈:2019-01-10
原始碼:MybatisDemo增刪改查
1、修改使用者資訊、刪除使用者:
比較簡單,就一起做了(電腦實在是太卡了,沒錢換==)
還是要先在user.xml裡面寫sql語句(注:引數多了就用pojo型別,然後再賦值,直接傳入整個pojo類)
<?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">
<!-- 名稱空間,用於隔離sql語句,後續會有重要作用 -->
<mapper namespace="user">
<!-- 跟新使用者,設定id,設定引數型別(因為有很多的引數,所以就用pojo型別了) -->
<update id="updateUser" parameterType="cn.nupt.pojo.User" >
UPDATE
`mybatis`.`user`
SET
`username` = #{username},
`address` = #{address}
WHERE `id` = #{id} ;
</update>
<!-- 刪除使用者 -->
<delete id="deleteUser" parameterType="int">
delete from user where id = #{id}
</delete>
</mapper>
同樣的,再測試類裡面寫一下:
注意:我們呼叫setValue語句的時候,只有sql語句裡面set了才有用,就算在這裡加了日期(如下所示),但是因為sql語句裡沒有set設定,所以不會更新到資料庫
package cn.nupt.mybatis.test;
import java.util.Date;
import org.apache. ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.junit.Test;
import cn.nupt.mybatis.utils.SqlSessionFactoryUtils;
import cn.nupt.pojo.User;
public class UpdateAndDelete {
//測試跟新
@Test
public void testUpdate() {
SqlSessionFactory sessionFactory = SqlSessionFactoryUtils.getSqlSessionFactory();
SqlSession session = sessionFactory.openSession(true);
User user = new User();
user.setId(1);
user.setUsername("PizAn");
user.setAddress("南京");
user.setBirthday(new Date());// 就算在這裡加了日期,但是因為sql語句裡沒有設定,所以不會跟信到資料庫
session.update("user.updateUser", user);
System.out.println(user);
session.close();
}
//刪除測試
@Test
public void testDelete() {
SqlSessionFactory sessionFactory = SqlSessionFactoryUtils.getSqlSessionFactory();
SqlSession session = sessionFactory.openSession(true);
session.delete("user.deleteUser", 10);
session.close();
}
}