1、编写接口
//根据ID查询用户
User getUserById(int id);
//增加一个用户
int addUser(User user);
//修改用户
int updateUser(User user);
//删除一个用户
int deleteUser(int id);
2、编写对应的mapper中的sql语句
//根据ID查询用户
<select id="getUserById" parameterType="int" resultType="pojo.User">
select * from mybatis.user where id = #{id}
</select>
//增加一个用户
<insert id="addUser" parameterType="pojo.User">
insert into mybatis.user (id, name, pwd) values (#{id},#{name},#{pwd});
</insert>
//修改用户
<update id="updateUser" parameterType="com.kuang.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>
3、测试
//根据ID查询用户
@Test
public void getUserById(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
User user = mapper.getUserById(1);
System.out.println(user);
sqlSession.close();
}
//增加一个用户
@Test
public void addUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
mapper.addUser(new User(4,"李林","123456"));
System.out.println("插入成功");
//提交事务
sqlSession.commit();
sqlSession.close();
}
//修改用户
@Test
public void updateUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
mapper.updateUser(new User(4,"鲜林","987654"));
sqlSession.commit();
sqlSession.close();
}
//删除一个用户
@Test
public void deleteUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
mapper.deleteUser(4);
sqlSession.commit();
sqlSession.close();
}
4、分析错误
- 标签不要匹配错
- resource 绑定mapper,需要使用路径!
- 若报 NullPointerException,是没有注册到资源!
- 输出的xml文件中可能存在中文乱码问题!
- maven资源没有导出问题!