mybatis 延迟加载 |
您所在的位置:网站首页 › mybatis延迟加载会导致性能下降吗 › mybatis 延迟加载 |
MyBatis的延迟加载(Lazy Loading)是一种优化技术,用于在需要时才加载关联对象或集合,从而提高性能和效率。以下是对MyBatis延迟加载的详细介绍: 延迟加载的基本概念 延迟加载是指在第一次访问对象的属性时才加载该对象的数据,而不是在对象创建时就立即加载所有的数据。这样可以避免不必要的数据库访问,减少系统的开销和提高性能。 SELECT * FROM user WHERE id = #{id}在上面的示例中,User类中的address属性会被设置为延迟加载。 public class MyBatisExample { public static void main(String[] args) { SqlSessionFactory sqlSessionFactory = MyBatisUtil.getSqlSessionFactory(); try (SqlSession session = sqlSessionFactory.openSession()) { UserMapper userMapper = session.getMapper(UserMapper.class); User user = userMapper.selectUser(1); System.out.println(user.getUsername()); // 此时不会加载address System.out.println(user.getAddress().getCity()); // 访问address时才会加载address } } }aggressiveLazyLoading属性:
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |