两个表关联,如:用户表(User) ,栏目模块表(Section)。
用户表(User)中有个外键字段关联到模块表(Section)。
在用户实体中,Section的外键为:
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "FK_TS_ID", nullable = false)
private Section section;
查询时,使用Hibernate的 get(id) 取的了 User 的实体,但我此时想知道用户是属于哪个模块的,只要模块ID就够了(SectionID),而不想加载整个模块,此时怎么破?
我用Debug追踪的Section这个实体,是个代理类,里面有Section的ID值,但是却是放在handler里面,我想要这个值,怎么破?

------解决方案--------------------
直接写JDBC查询或者用createSqlQuery()方法!
------解决方案--------------------
User表中加字段,存储栏目名称
------解决方案--------------------
使用hibernate的属性延迟加载的话,获取属性值,额外需要添加OpenSessionInViewFilter
不然就会包session关闭异常。考虑下这个过滤器
------解决方案--------------------
hibernate本来效率就是弱点,你这样高效的想法,和hibernate不匹配,不协调。