如何重新初始化延迟加载实体?
我有一个实体“人”:
class Person {
String name;
String phone;
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
Set<Address> addresses = new HashSet<Address>();
}
当我在表中显示人员时,我不想加载地址。 当我打开编辑对话框时,我也想显示地址。但我遇到了延迟加载异常(没有活动会话)。
如何重新初始化 Person 实例以加载地址?
I have an entity Person:
class Person {
String name;
String phone;
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
Set<Address> addresses = new HashSet<Address>();
}
When I display persons at table I don't want to load addresses.
When I open edit dialog, I want to display addresses too. But I got Lazzy loading exception (there is no active session).
How can I reinitialize Person instance to load addresses?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
调用另一种方法,该方法将从数据库中重新加载此人及其地址:
或者
在单个查询中执行此操作。
Call another method which will reload the person from database along with his addresses:
or
to do it in a single query.