Mybatis实现增删改查

 2023-04-07 21:21:04  阅读 0

MyBatis是一种基于Java语言的持久层框架,用于将Java对象映射到关系数据库中。它采用SQL映射文件配置方式,使得开发者可以将SQL语句与java代码分离,从而提高了代码的可维护性。

对于增删改查操作,MyBatis提供了四种常用的标签来执行相应的SQL操作:

<insert> 标签用于执行插入操作,可以通过传递参数向SQL语句中插入数据。

<update> 标签用于执行更新操作,可以通过传递参数指定更新哪些记录以及更新的数据。

<delete> 标签用于执行删除操作,可以通过传递参数指定要删除的记录。

<select> 标签用于执行查询操作,可以通过传递参数指定查询条件,并将查询结果映射为Java对象返回。

// 导入相关包 import java.util.List; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; public class MyBatisExample { // 获取SqlSession实例的工厂 private static SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(MyBatisExample.class.getResourceAsStream("mybatis-config.xml")); // 新增一条记录 public void insertRecord(Record record) { SqlSession session = sessionFactory.openSession(); try { session.insert("com.example.mapper.RecordMapper.insert", record); session.commit(); } finally { session.close(); } } // 更新一条记录 public void updateRecord(Record record) { SqlSession session = sessionFactory.openSession(); try { session.update("com.example.mapper.RecordMapper.update", record); session.commit(); } finally { session.close(); } } // 删除一条记录 public void deleteRecord(int id) { SqlSession session = sessionFactory.openSession(); try { session.delete("com.example.mapper.RecordMapper.delete", id); session.commit(); } finally { session.close(); } } // 查询所有记录 public List<Record> selectAllRecords() { SqlSession session = sessionFactory.openSession(); try { return session.selectList("com.example.mapper.RecordMapper.selectAll"); } finally { session.close(); } } }

以上代码中,SqlSessionFactory用于创建SqlSession实例。SqlSession是执行持久化操作的主要接口,它提供了许多方法来执行SQL语句并返回结果。在每个操作中,我们都打开一个SqlSession实例,使用相应的方法执行操作并提交更改,最后关闭SqlSession实例。

其中,mybatis-config.xml文件是MyBatis的配置文件,用于配置数据库连接等信息以及映射文件的位置。RecordMapper是一个Java接口,其中定义了插入、更新、删除和查询记录

标签:

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码