Mybatis增删改查
- id:就是对应的namespace中的方法名
- resultType:Sql语句的返回值
- parameterType:传入的参数
- 增删改需要提交事务
1.UserMapper.java文件
public interface UserMapper {
/**
* 查询全部用户
* @return
*/
List<User> getUserList();
/**
* 根据Id查询
* @param i
* @return
*/
User getUserById(int i);
/**
* 插入数据
* @param user
* @return
*/
int addUser(User user);
/**
* 修改用户
* @param user
* @return
*/
int updateUser(User user);
/**
* 删除用户和
* @param id
* @return
*/
int deleteUser(int id);
}
2.UserMapper.xml文件
<select id="getUserList" resultType="com.fww.pojo.User">
select * from mybatis.user
</select>
<select id="getUserById" parameterType="int" resultType="com.fww.pojo.User">
select * from mybatis.user where id = #{id}
</select>
<!-- 对象中的属性可以直接取到-->
<insert id="addUser" parameterType="com.fww.pojo.User">
insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd})
</insert>
<update id="updateUser" parameterType="com.fww.pojo.User">
update mybatis.user set name = #{name},pwd = #{pwd} where id = #{id}
</update>
<delete id="deleteUser" parameterType="int">
delete from mybatis.user where id = #{id}
</delete>
test文件
public class UserMapperTest {
@Test
public void test() {
//获得SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//执行Sql,面向接口编程只需要拿到接口对象即可
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = userMapper.getUserList();
for (User user : userList) {
System.out.println(user);
}
//关闭SqlSession
sqlSession.close();
}
@Test
public void getUserById(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
User userById = mapper.getUserById(1);
System.out.println(userById);
sqlSession.close();
}
@Test
//增删改需要提交事物
public void addUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
int i = mapper.addUser(new User(7, "nif", "123"));
System.out.println(i);
sqlSession.commit();
sqlSession.close();
}
@Test
public void updateUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
int fww = mapper.updateUser(new User(1, "fww", "31324"));
System.out.println(fww);
sqlSession.commit();
sqlSession.close();
}
@Test
public void deleteUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
int i = mapper.deleteUser(7);
System.out.println(i);
sqlSession.commit();
sqlSession.close();
}
}