目录
一、引言
二、Mybatis——增
举例:添加用户
三、Mybatis——删
举例:删除用户
四、Mybatis——改
举例:修改用户
五、Mybatis——查
六、注意
END:
一、引言
书接上回,我们在了解完mybatis之后,肯定要知道怎么使用,本文就来详细讲解Mybatis的增删改查事务,还不了解怎么配置mybatis的童鞋可以去这篇文章了解一下通俗易懂讲解javaweb之mybatis-CSDN博客
二、Mybatis——增
举例:添加用户
图解:xml配置文件中写入
注意:要写在xml文件中的mapper标签内
insert的标签参数:
id为这个映射语句的唯一标识符
parameterType为参数类型
xml中的代码:
<insert id="addUser" parameterType="user.User">INSERT INTO USER(username,password,email,tellphone,remark) VALUE(#{username},#{password},#{email},#{tellphone},#{remark})</insert>
测试类的代码:
@Testpublic void addUser(){// 创建数据库会话实例sqlSessionSqlSession sqlsession =ssf.openSession();User user = new User("胡英俊","123456","234567dsfgrt","12345657","grthrgfaw");int result = sqlsession.insert("test.addUser",user );sqlsession.commit();System.out.println("影响了:"+result);sqlsession.close();}
步骤解析:
先创建一个sqlsession对象,再创建一个user对象,int result用来传递影响的行数,通过sqlsession的insert方法,插入user对象,再通过commit方法提交,如果没有commit方法是不会保存插入的哦,虽然result有结果,但是没有保存这次的插入
三、Mybatis——删
举例:删除用户
xml中的代码:
<delete id="deleteUserById" parameterType="int">delete from user where id=#{id}</delete>
delete标签中的也是
id为这个映射语句的唯一标识符
parameterType为参数类型
测试类的代码:
@Testpublic void testDelete() {// 创建数据库会话实例sqlSessionSqlSession sqlsession =ssf.openSession();// 删除用户sqlSession.delete("test.deleteUserById",18);// 提交事务sqlSession.commit();sqlSession.close();}
四、Mybatis——改
举例:修改用户
xml中的代码:
<update id="updateUser" parameterType="com.example.User"> UPDATE user SET username = #{username}, password = #{password}, email = #{email}, tellphone = #{tellphone}, remark = #{remark} WHERE id = #{id} </update>
测试类的代码 :
@Testpublic void updateUser(){// 创建数据库会话实例sqlSessionSqlSession sqlsession =ssf.openSession();User user = new User(5,"胡英俊","123456","234567dsfgrt","12345657","grthrgfaw");int result = sqlsession.update("test.updateUser",user );sqlsession.commit();System.out.println("影响了:"+result);sqlsession.close();}
还是需要commit方法才能成功修改并保存
五、Mybatis——查
xml中的代码:
<select id="findUserById" parameterType="int" resultType="user.User">select * from user where id=#{id}</select>
resultType是查询结果的结果类型
测试类的代码:
@Testpublic void testFindUserById(){SqlSession sqlsession =ssf.openSession();//System.out.println(session);User user = sqlsession.selectOne("test.findUserById", 4);System.out.println(user);System.out.println("用户名字:"+user.getName()+",用户密码:"+user.getPassword());sqlsession.close();}
六、注意
有几点需要注意的地方:
1.配置文件中的id的属性值,不一定要和方法名一样,但是一定要和sqlsession的参数名一样
2.除了查询语句,增删改都需要进行commit方法提交,不然不会保存在数据库
3.每一个数据表的xml文件都是单独的,不能在这个数据表的xml文件中进行另一个表的操作,并且创建表的xml文件还要在SqlMapConfig.xml文件下添加才行。
END:
好了,以上就是《Mybatis之增删改查》的全部内容了,如果有帮助到你的话,麻烦点赞收藏转发你的支持就是我更新的最大动力,欢迎评论区讨论或者私信留言,我是sharefive,期待你的关注,886~