java框架hibernate中如何只关联其他对象的一部分属性

比如user类和group类是多对一关系我原来是这么写的publicclassUser{privateintid;privateStringname;privateGro... 比如user类和group类 是多对一关系
我原来是这么写的
public class User{
private int id;
private String name;
private Group g;
...
}

我领导说不建议这么写,因为关联的group对象属性太多 没意义都查询出来
他的意思是
public class User{
private int id;
private String name;
private int groupId;
private String groupName;
...
}
这样就只查询group的id和name两个属性 那这样的话 我在查询的时候怎么写hql语句啊?而且我们用注解配置关联关系该怎么配置?
谢谢
这样的话就没有对应的实体类作为关联了 怎么在User类里用注解关联Group类啊
展开
 我来答
墨林云轩
2015-01-20 · TA获得超过287个赞
知道答主
回答量:16
采纳率:0%
帮助的人:2.2万
展开全部
其实无所谓的,你就算下面那两个属性写成private int aaa,private String bbb 这样都行,只要在User这个类里面写上getset方法,然后对应xml里面复制上两个字段改一下名字,变成aaa和bbb就行,到时候你hql语句变一下就行,比如select new Map(g.groupid as aaa,g.groupName as bbb,u.id,u,name) from User u join Group g 这样就行了,到时候你在页面直接用User里面的属性取就OK,没必要配什么东西。
更多追问追答
追问
那groupId和groupName还有必要作为user表的字段么?groupId是有必要的 groupName还有必要么?groupName用不用加transient注解不作为持久化字段?
追答
什么都不需要,刚才也说错了,你仅仅需要在User.java这个类里加那两个字段,加getset就OK,语句按我那么写。
sunjinfu1987
2015-01-21 · TA获得超过3152个赞
知道大有可为答主
回答量:1218
采纳率:72%
帮助的人:414万
展开全部
hibernate现在不是可以直接执行sql语句了么,再手动封装即可。直接写sql语句关联出需要的字段即可。hibernate项目中好像都不会去配置关联关系。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式