SSH中用DetachedCriteria查询问题。

问题描述

DetachedCriteriacriteria=DetachedCriteria.forClass(Comment.class);criteria.createAlias("product","product").add(Restrictions.eq("product.id",productId));criteria.addOrder(Order.desc("createDate"));

首先,我只需要Comment,但是我要用comment中的product_id外键作为条件,用这种方式查询会得到的sql语句包含了comment的字段和product的字段,而且还join了product表。这样查询效率似乎不太好。用HQL的话fromCommentcommentwherecomment.product=?orderbycomment.createDatedesc

就不会joinproduct表,但是HQL不支持limit。请问可以用什么方法通过Criteria创建条件又不joinprouduct表或者让生成的select中不带有product的字段?

解决方案

本帖最后由 waiting_hao 于 2014-11-23 21:15:47 编辑
解决方案二:
DetachedCriteriacriteria=DetachedCriteria.forClass(Comment.class);criteria.createAlias("comment","comment").add(Restrictions.eq("comment.product.id",productId));criteria.addOrder(Order.desc("createDate"));

时间: 2024-12-23 18:39:42

SSH中用DetachedCriteria查询问题。的相关文章

SSH框架 关于查询视图数据在jsp页面上显示不了的问题

问题描述 SSH框架 关于查询视图数据在jsp页面上显示不了的问题 问题描述:有排课表Course,从中取出四个属性来生成视图Information,然后在service层写业务逻辑想显示视图的数据时,jsp页面显示不出数据来.service层代码: 在数据库中视图information是有数据的,请问service层应该怎么写才能在jsp中显示视图的数据? 解决方案 照你这个方法,只是返回了查询数据列表view对象,然后你需要在控制层@Controller修饰的类的某个方法中调用这个查询,并把

android-在Google中用默认浏览器查询字符串

问题描述 在Google中用默认浏览器查询字符串 请问,想实现搜索功能,可以打开默认浏览器,搜索传递字符值. public void searchOnGoogle(String keywords){---} 有没有用指定过滤器的方法? 解决方案 String query = URLEncoder.encode(keywordsutf-8"");String url = ""http://www.google.com/search?q="" + q

ssh-jsp 使用的是SSH 关联列查询数据问题

问题描述 jsp 使用的是SSH 关联列查询数据问题 现在有2个表 A和B ,有相同的列 [ke],没有主外键关联 反向工程的实体类也是没有关联的 我的Dao是继承 HibernateDaoSupport 类, 我现在要根据这2个表相同的列查询出数据,怎么来查? 使用什么方法,返回的类型是什么? 解决方案 可以考虑使用HQL,灵活性更好 方法的话使用hibernateTemplete.find(String hql); 返回类型为List,具体要看你需要怎么返回了 解决方案二: 自己直接写个sq

优化-SSH+tomcat+Oracle 查询次数多了后服务器非常卡

问题描述 SSH+tomcat+Oracle 查询次数多了后服务器非常卡 初学者 今天第一次配置SSH框架 查询次数多了后就非常卡 服务器基本就不响应了 求大神解答 谢谢了

select-c#中用linq查询datatable的问题

问题描述 c#中用linq查询datatable的问题 之前用datetable的select方法来查询,发现这个方法非常诡异,有时候会查询到一些不对的结果.所以就想换过用linq来查.但用了一会出现了一个问题.就是我希望以数据表中的一个以时间格式的字段(如:2014-9-17 23:59:17)进行查询时,用Field转换这个字段的数据发现转换不了,系统报错了..请问应该怎么解救这个问题啊? 解决方案 .Cast().Where(x => DateTime.Parse(x["字段&quo

SQL中的LIKE中用参数化查询

今天终于学会怎么在like中用参数化查询啦..哈哈..再也不用担心sql注入了...  

hibernate DetachedCriteria 查询问题

问题描述 看了 robbin 的 应用Hibernate3的DetachedCriteria实现分页查询 的帖子.我用struts2 在 想做分页 .jsp页面的分页功能就是不能实现.action 的部分,我不会写.在action 里,ps.getPageSize();ps.getNextIndex();的值都能正常现实.但是就是jsp页面 不分页.我把action 的代码 传上public String execute() throws Exception { DetachedCriteria

在ADO.NET中用参数化查询缩短开发时间

ado 一段时间以来,存储过程一直是企业应用程序开发数据访问的首选方法.存储过程的安全性更高.封装能力更强,并能执行复杂的逻辑,且不会打乱应用程序代码.但是,它也存在一些缺点: • 开发者倾向于在存储过程中加入商业逻辑. • 更改过程时必须改变开发环境. • 查找过程所需的参数比较费时. • 许多时候,存储过程提供的功能超出所需. 嵌入到应用程序代码中的内联SQL代码是数据访问的另一个常见方法.虽然企业在开发过程中很少用到这种方法,但许多小型项目应用这种类型的数据访问方法.应用内联SQL可以实现

ssh分页+模糊查询

问题描述 用myeclipse+sqlserver做,网上找了很多都没看懂,求个简单点的. 解决方案 解决方案二:分页的话,如果你使用了HIbernate,就简单了解决方案三:hibernate框架下的分页:Sessionsession=this.getSession();Queryq=session.createQuery(hql);q.setFirstResult(offset);q.setMaxResults(length); 模糊查询也太简单了吧like%xxx%