为什么我hibernate session.createQuery(hql)不能加select * ..只能是 from .. 别人的可是是完整的hql语
4个回答
展开全部
select * 这样的表达式本身就是错的。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
createQuery只能用hql语句,要用sql语句(也就是你说的select * )应该使用session.createSQLQuery(sql);
当然createQuery方法也是可以加Select 的, 不过如果要加select的话,需要有明确的构造函数。举个例子
比如一个实体类UserInfo有三个字段:id,name,gender。如果你要使用select的话就需要声明一个构造函数
public UserInfo(int id, String name, int gender) {
......你懂得
}
然后就是getSession().createQuery("select new UserInfo(id, name, gender) from UserInfo");
基本上就这样了。有什么不懂得,再说吧。
当然createQuery方法也是可以加Select 的, 不过如果要加select的话,需要有明确的构造函数。举个例子
比如一个实体类UserInfo有三个字段:id,name,gender。如果你要使用select的话就需要声明一个构造函数
public UserInfo(int id, String name, int gender) {
......你懂得
}
然后就是getSession().createQuery("select new UserInfo(id, name, gender) from UserInfo");
基本上就这样了。有什么不懂得,再说吧。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-07-13
展开全部
hql语句是不需要加select *
好好看一下hibernate 基础。
好好看一下hibernate 基础。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |