Mybatis之增删查改
2023-12-26 16:52:49
目录
一、引言
接着上次的mybatis,我们在了解完mybatis之后,肯定要知道怎么使用,本文就来详细讲解Mybatis的增删改查事务,还不了解怎么配置mybatis的朋友可以去这篇文章了解一下什么是MyBatis
二、Mybatis——查询
示例:查询用户
xml文件配置:
<!--查询-->
<select id="findUserByName" parameterType="String" resultType="com.xinhua.domain.Student">
select * from student where studentName = #{studentName}
</select>
测试代码:
@Test
public void Test03(){
SqlSession sqlSession = ssf.openSession();
List<Student> students = sqlSession.selectList("test.findUserByName","zhangsan");
for (Student student :students){
System.out.println(student.getId()+","+student.getStudentName()+","+student.getGender()+","+student.getAddress()+","+student.getEmail());
}
}
parameterType和resultType解释
parameterType:指定输入参数类型,mybatis通过ognl从输入对象中获取参数值拼接在sql中。
resultType:指定输出结果类型,mybatis将sql查询结果的一行记录数据映射为resultType指定类型的对象。
parameterType:定义输入到sql中的映射类型,${value}表示使用参数将${value}替换,做字符串的拼接。
注意:如果是取简单数量类型的参数,括号中的值必须为value
resultType:定义结果映射类型。
三、Mybatis——添加
示例:添加用户
xml文件配置:
<insert id="addStudent" parameterType="com.xinhua.domain.Student">
<selectKey keyProperty="id" order="BEFORE" resultType="int">
select last_insert_id()
</selectKey>
INSERT into student(studentName,gender,address,email,remark) VALUES (#{studentName},#{gender},#{address},#{email},#{remark})
</insert>
测试代码
@Test
public void Test05(){
SqlSession sqlSession = ssf.openSession();
//添加用户信息
Student student = new Student("往二","男","成都","4567688@qq.com","rtyu");
int insert = sqlSession.insert("test.addStudent", student);
// 提交事务
sqlSession.commit();
System.out.println(insert);
}
四、Mybatis——删除
示例:删除用户
xml文件配置
<!--删除-->
<delete id="deleteStudentById" parameterType="int">
DELETE FROM student where id = #{id}
</delete>
测试代码:
@Test
public void testDelete() {
// 数据库会话实例
SqlSession session = ssf.openSession();
//删除用户
Student student = session.selectOne("test.deleteStudentById",17);
// 提交事务
session.commit();
session.close();
}
五、Mybatis——修改
示例:修改用户
xml文件配置
<update id="updateStudent" parameterType="com.xinhua.domain.Student">
UPDATE student set studentName=#{studentName},gender=#{gender},address=#{address},email=#{email},remark=#{remark} where id = #{id}
</update>
测试代码
@Test
public void testUpdate() {
// 数据库会话实例
SqlSession sqlSession = null;
// 创建数据库会话实例sqlSession
sqlSession = ssf.openSession();
// 修改用户信息
Student student = new Student();
student.setId(14);
student.setStudentName("衣");
student.setGender("女");
student.setAddress("廊坊");
student.setEmail("32642532629@qq.com");
student.setEmail("euwfh");
sqlSession.update("test.updateStudent", student);
// 提交事务
sqlSession.commit();
sqlSession.close();
}
注意:配置文件中的id的属性值,不一定要和方法名一样,但是一定要和sqlsession的参数名一样
文章来源:https://blog.csdn.net/weixin_73509711/article/details/135222509
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!