MyBatis的增删改查操作
CRUD操作总结:只需要修改3处代码即可
特别注意:增删改需要提交事务才能成功操作数据库!!!
即sqlSession.commit();
先在UserMapper中实现接口,而后在xml中写sql语句,最后在测试类中写测试代码!!
Usermapper:
package com.lwx.dao; import com.lwx.pojo.User; import java.util.List; public interface UserMapper { //查询全部用户 List<User> getUserList(); //按照id查询用户 User getUserById(int id); //增加一个用户 int addUser(User user); //更新用户 int updateUser(User user); //删除用户 int deleteUser(int id); }
UserMapper.xml:
<?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.lwx.dao.UserMapper"> <!--查询--> <select id="getUserList" resultType="com.lwx.pojo.User"> select * from mybatis.user </select> <!--按id查询--> <select id="getUserById" parameterType="int" resultType="com.lwx.pojo.User"> select * from mybatis.user where id=#{id} </select> <!--插入--> <insert id="addUser" parameterType="com.lwx.pojo.User" > insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) </insert> <!--更新--> <update id="updateUser" parameterType="com.lwx.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> </mapper>
测试类:
package com.lwx.dao; import com.lwx.pojo.User; import com.lwx.utils.MybatisUtils; import org.apache.ibatis.session.SqlSession; import org.junit.Test; import java.util.List; public class UserMapperTest { @Test public void test() { SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); //UserDao mapper = sqlSession.getMapper(UserDao.class); List<User> userList = userMapper.getUserList(); for(User user :userList){ System.out.println(user); } sqlSession.close(); } @Test public void getUserByIdTest(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); User user = mapper.getUserById(1); System.out.println(user); sqlSession.close(); } @Test public void addUserTest(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); int res = mapper.addUser(new User(5, "睡觉", "123485")); if(res>0){ System.out.println("插入成功!"); } sqlSession.commit(); sqlSession.close(); } @Test public void updateUserTest(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); mapper.updateUser(new User(4,"乌鱼","123478")); sqlSession.commit(); sqlSession.close(); } @Test public void deleteUserTest(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); mapper.deleteUser(4); sqlSession.commit(); sqlSession.close(); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本