Hibernate关于配置many-to-one选项的问题

现在有俩个表单:user:id(主键),userName,password,ageentry:id(主键),title,summary,content,author(外键... 现在有俩个表单:
user:id(主键),userName,password,age
entry:id(主键),title,summary,content,author(外键,对应user的主键)
实体类:
User: private int id,
private String userName,
private String password,
private int age;
private Set<Entry> sentry=new HashSet<Entry>();(各自的set和get方法)
Entry: private int id;
private String title;
private String summary;
private String content;
private User users;(各自的set和get方法)
Hibernate的大致配置文件:
Entry.hbm.xml <class name="Entry" table="ENTRY">
.........(省略中间部分)
<many-to-one name="users" class="User"> <column name="author"></column> </many-to-one>
User.hb.xml <class name="User" table="USER">
......(省略中间部分)
<set name="sentry" inverse="true" cascade="all" lazy="false"> <key> <column name="author" precision="9" scale="0" /> </key> <one-to-many class="Entry" /> </set>
然后在JAVA类中通过如下方式查询:
String hql=" From User where id="+new Long(id);
Query query=getSession().createQuery(hql);List list=query.list(); User result=(User)list.get(0);

其中如果直接查询User即hql里面是From User,查询到的数据是OK的,但是如果我一换成直接查询Entry
即hql内容是From Entry,则就会报如下的错误:
Exception in thread "main" java.lang.NullPointerException
at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372) ...
at Test.main(Test.java:29)
因字数限制,所以只有如此写,请问这个问题该如何解决?
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
zh2157524
2014-02-20 · TA获得超过462个赞
知道小有建树答主
回答量:387
采纳率:50%
帮助的人:410万
展开全部
错误的HQL贴出来....你这样 描述不清
更多追问追答
追问
谢谢,因为字数限制,请看http://zhidao.baidu.com/question/1829939910506239620.html
追答
关联查询 还是单表查询

你的错误也很不明确啊 少年
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小傻

2014-02-20 · 知道合伙人软件行家
小傻
知道合伙人软件行家
采纳数:11567 获赞数:31137
已经做过两个上架的app和两个网页项目.

向TA提问 私信TA
展开全部
错误再贴多一点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式