问题是这样的,在hibernate配置配置了对象都是延迟加载的,直接从数据库中查询没问题,但是我一个对象刚保存完需要实现延迟加载行不行,代码如下:
User user=new User();
user.setGroupid(2);
session.save(user);
User user=session.get(User.class,new Long(user.getId()));
user.getGroup().getName(); 这时user.getGroup()为null,只有在另起一个事务才能延迟加载,这个问题能解决吗。
User user=new User();
user.setGroupid(2);
session.save(user);
User user=session.get(User.class,new Long(user.getId()));
user.getGroup().getName(); 这时user.getGroup()为null,只有在另起一个事务才能延迟加载,这个问题能解决吗。
解决方案 »
- 急!!Jquery调用后台方法!!java.lang.OutOfMemoryError: Java heap space
- hibernate报错Exception in thread "main" java.lang.ExceptionInInitializerError
- 让DTO成为动态的?
- 在 Web Service中如何操作 servletContext 变量 ?
- 我用eclipse + webLogic开发,每次在eclipse中改了代码,都要重起webLogic才有用,怎么样才能让我在eclipse更改代码后,立即生效
- 从tomcat服务器,得到一个数据源,有这样的异常,怎么办
- 为什么会出现错误: java.rmi.AccessException: CORBA NO_PERMISSION 0 No; nested exception
- ************200分请教,来者有分.........................
- 请问:哪里有在Jbuilder上作EJB开发地Step By Step教程。
- Spring Value注解
- java List值比较
- 关于poi3.7处理excel的问题
2.在同一个hibernate的session中,默认新保存的对象都是放到这个session中的,也就是所谓的一级缓存,如果要实现在保存中就是延迟加载模式,估计不太好实现。但是反过来想,为什么楼主会有这样的需求呢?
为了代码的通用型,比如我一个方法,供其它方法调用,写这个方法的人,没有估计到调用这个方法实际上只传了刚保存后的对象,调用的时候就出错了。
如果Hibernate的确没有提供在一级缓存级的延迟加载,那我就知道了,找其他方法实现。谢谢。