MyBatis之CRUD(增删改查)
1.注意事项:
- namespace中的包名要和Dao/Mapper接口包名一致
- 此项目是在MyBatis入门教学01篇上进行修改的
- *增删改查需要提交事务,不然不会执行成功
2.开始实现
2.1 select
查询的实现:
- id:就是对应的namespace中的方法名
- resultType:Sql语句执行的返回值
- parameterType:参数类型(*重要!)
1.编写接口
//根据id查找用户
User getUserById(int id);
2.编写对应的mapper中的sql语句
<!--根据id查找-->
<select id="getUserById" parameterType="int" resultType="com.zzx.poto.User">
select * from mybatis.user where id = #{id}
</select>
3.测试
@Test
public void getUserById()
{
//1.获取SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//2.执行SQL
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = userMapper.getUserById(3);
System.out.println(user);
//关闭SqlSession
sqlSession.close();
}
2.2 insert
插入的实现:就可以照着查询的依葫芦画瓢了
1.编写接口
//添加用户
int AddUser(User user);
2.编写对应的mapper中的sql语句
<!--添加用户-->
<insert id="AddUser" parameterType="com.zzx.poto.User">
insert into mybatis.user (username,password) values(#{username},#{password})
</insert>
3.测试
@Test
public void AddUser()
{
//1.获取SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//2.执行SQL
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int res = userMapper.AddUser(new User("cong","123456"));
if (res>0)
{
System.out.println("添加成功!");
}
//提交事务
sqlSession.commit();
//关闭SqlSession
sqlSession.close();
}
2.3 delete
删除的实现:
1.编写接口
//删除用户
int DelUser(int id);
2.编写对应的mapper中的sql语句
<!--删除用户,根据id删除-->
<delete id="DelUser" parameterType="int">
delete from mybatis.user where id = #{id}
</delete>
3.测试
@Test
public void DelUser()
{
//1.获取SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//2.执行SQL
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int res = userMapper.DelUser(5);
if (res>0)
{
System.out.println("删除成功!");
}
//提交事务
sqlSession.commit();
//关闭SqlSession
sqlSession.close();
}
2.4update
修改的实现:
1.编写接口
//修改用户
int UpdateUser(User user);
2.编写对应的mapper中的sql语句
<!--修改用户,根据id修改-->
<update id="UpdateUser" parameterType="com.zzx.poto.User">
update mybatis.user set username = #{username},password = #{password} where id =#{id}
</update>
3.测试
@Test
public void UpdateUser()
{
//1.获取SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//2.执行SQL
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int res = userMapper.UpdateUser(new User(5,"奥特曼","123456"));
if (res>0)
{
System.out.println("修改成功!");
}
//提交事务
sqlSession.commit();
//关闭SqlSession
sqlSession.close();
}
OK,今天的学习就结束啦,如果对你有帮助麻烦给个三连(点赞关注加收藏),我是猪猪侠,一个码农,我们在Mybatis03篇再会