mybatis(ORM)
时间: 2023-12-05 18:41:51 浏览: 28
MyBatis是一种基于Java的ORM框架,它将数据库操作和SQL映射与Java对象的方法和属性相结合。ORM(对象关系映射)是一种编程技术,它将数据库中的数据映射到程序中的对象中,从而简化了数据库操作。MyBatis通过XML或注解的方式提供了灵活的SQL映射配置,使得开发人员可以更加方便地进行数据库操作。同时,MyBatis还提供了缓存机制和插件机制,可以进一步提高应用程序的性能和可扩展性。
以下是一个使用MyBatis进行数据库操作的示例:
```java
// 定义一个User类
public class User {
private int id;
private String name;
private int age;
// 省略getter和setter方法
}
// 定义一个UserMapper接口
public interface UserMapper {
@Select("SELECT * FROM user WHERE id = #{id}")
public User getUserById(int id);
@Insert("INSERT INTO user(name, age) VALUES(#{name}, #{age})")
public void addUser(User user);
@Update("UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id}")
public void updateUser(User user);
@Delete("DELETE FROM user WHERE id = #{id}")
public void deleteUser(int id);
}
// 使用SqlSessionFactory创建SqlSession
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
// 获取UserMapper接口的实现类
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
// 调用UserMapper接口的方法进行数据库操作
User user = userMapper.getUserById(1);
user.setName("new name");
userMapper.updateUser(user);
// 提交事务并关闭SqlSession
sqlSession.commit();
sqlSession.close();
```