问候!
我有以下类,有时只需要检索title和subTitle元素:
public class Article implements Serializable {
private static final long serialVersionUID;
private int id;
private String title;
private String subTitle;
private String body;
....
}
促进这一点的最佳方法是什么?我想过将title和subTitle作为独立的对象,但老实说我还不知道我在做什么。
我很乐意改变文章的整个构成,但是现在首先询问对我来说是最明智的。
提前致谢。
答案 0 :(得分:1)
您可以使用LAZY注释每个简单属性 - >就像这样@Basic(fetch = FetchType.LAZY)
因此,只有在您需要时才会加载
答案 1 :(得分:1)
如果这是出于显示目的,您还可以依赖ResultTransformer。
请参阅此SO answer,其中涉及类似问题并限制检索到的属性。
答案 2 :(得分:1)
我认为你可以通过创建一个特定的类来保存你想要的信息,然后在你的映射中导入它来解决这个问题。请参阅手册中的5.1.19.import。我相信您可以在HQL中使用导入的类,如下所示:
"select new Titles(a.title, a.subTitle) from Article a where a.id = :id"
以下是我在此主题上发现的博文:http://gustavoringel.blogspot.com/2009/02/creating-dto-in-nhibernate-hql-using.html。
祝你好运!