Query query = session.createQuery("select new User"
+" (u.id,u.name) "
+" from User u ");
List list = query.list();
以上是个hibernate的hql语句.查询出来是两列!hibernate自己给起了别名了.叫col_0_0_和col_1_0_
我想自己给它起别名!但是我写成下面这样不起作用!有人知道应该怎么写么?Query query = session.createQuery("select new User"
+" (u.id as id,u.name as name) "
+" from User u ");
List list = query.list();
解决方案 »
- 想写个方法,启动另一个JAVA进程,调用Runtime.getRuntime()的问题
- list 如何转到Map
- 3des加密:Given final block not properly padded
- 判断字符串1a2b3c4d5e6f格式是否正确,其中abcdef顺序可能互换,但只要是这六个字符就行
- 呵呵,傻呼呼的,写完了代码没有放出地址,重新放出下载地址,JAVA版本的仙剑邀请大家一起完成
- 对HashMap的JDK底层实现的讨论!!!跟thiningInJava的简单hashmap做了下比较,好处在哪里?
- 紧急求救,高分犒赏
- 心情不错,升五个三角,散分庆祝!
- 疯了!! 救我。。。。。。 Sample.jar怎么就是不能执行???
- 为什么会是这样????
- 如何使 jtable的列水平放置
- 提问,static方法拿来做“牧羊人”
Query query = session.createQuery("select u.id,u.name from User as u");
List list = query.list();hibernate控制台输出SQL: select u.id,u.name from user u;
对啊,就是用了聚集函数啊!我用了case whenQuery query = session.createQuery("select new User"
+" (u.id,u.name,"
+"(case when u.code=1340 then 1 when u.code = 1345 then 2 else 0 end)"
+")"
+" from User u order by col_2_0_");
List list = query.list();我要order by case when这列,现在我只能写成上面这样!这个col_2_0_是hibernate起的名.我想自己起名有办法么?
+"(case when u.code=1340 then 1 when u.code = 1345 then 2 else 0 end)"
+")"
+" from User u order by (case when u.code=1340 then 1 when u.code = 1345 then 2 else 0 end)");
List list = query.list();
没用过 你看看这个能否解决你的相关问题
http://www.javaeye.com/topic/29650