3、CURD(增删改查)
1. namespace
namespace中的包名要和Dao/Mapper接口的包名一致
2. select
选择,查询语句;
-
id:就是对应的namespace中的方法名;
-
resultType : Sql语句执行的返回值;
-
parameterType : 参数类型;
-
编写接口
public interface UserMapper {
//查询所有用户
public List<User> getUserList();
//插入用户
public void addUser(User user);
} -
编写对应的mapper中的sql语句
<insert id="addUser" parameterType="com.kuang.pojo.User">
insert into user (id,name,password) values (#{id}, #{name}, #{password})
</insert> -
测试
注意:增删改查一定要提交事务:
sqlSession.commit();
-
3. Insert
4. update
5. Delete
示例代码(依次)
package com.alice.dao;
import com.alice.pojo.User;
import java.util.List;
public interface UserMapper {
List<User> getUserList();
User getUserById(String id);
int addUser(User user);
int updateUser(User user);
int deleteUser(String id);
List<User> getUserListByLike(String name);
}
<?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.alice.dao.UserMapper">
<select id="getUserList" resultType="User">
select * from `mybatis-alice-01`.user;
</select>
<select id="getUserListByLike" resultType="User">
select * from `mybatis-alice-01`.user where name like "%"#{name}"%";
</select>
<select id="getUserById" resultType="User" parameterType="String">
select * from `mybatis-alice-01`.user where id = #{id};
</select>
<insert id="addUser" parameterType="User">
insert into `mybatis-alice-01`.user (id ,name ,pad ) values (#{id},#{name },#{pad });
</insert>
<update id="updateUser" parameterType="User">
update `mybatis-alice-01`.user
set name = #{name } ,pad=#{pad }
where id= #{id};
</update>
<delete id="deleteUser" parameterType="String">
delete from `mybatis-alice-01`.user where id=#{id};
</delete>
</mapper>
package com.alice.dao;
import com.alice.pojo.User;
import com.alice.utils.MyBatisUtils;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;
import java.util.List;
public class UserDaoTest {