离线分页查询

Action

    /*
     * 执行的访问首页的方法
     */
    public String execute(){
          //查询所有一级分类的集合
        List<Category> cList=categoryService.findAll();
        //将一级分类存入到session范围
        ActionContext.getContext().getSession().put("cList", cList);
        //查询热门商品
        List<Product> hList=productService.findHot();
        //保存到值栈中
        ActionContext.getContext().getValueStack().set("hList", hList);
        //查询最新商品
        List<Product> nList=productService.findNew();
        //保存到值栈中
        ActionContext.getContext().getValueStack().set("nList",nList);
        return "index";
    }

 Dao

//首页上热门商品查询
    public List<Product> findHot() {
        //使用离线条件查询
        DetachedCriteria criteria=DetachedCriteria.forClass(Product.class);
        //查询热门的商品,条件就是is_hot=1
        criteria.add(Restrictions.eq("is_hot", 1));
        //倒序排序输出
        criteria.addOrder(Order.desc("pdate"));
        //执行查询
        List<Product> list=this.getHibernateTemplate().findByCriteria(criteria, 0, 10);
        return list;
    }

JSP

1、查询session中的数据

<s:iterator var="c" value="#session.cList">
  <li>
    <a href="${pageContext.request.contextPath }/product_findByCid.action?cid=<s:property value="#c.cid"/>&page=1"><s:property value="#c.cname"/></a>
    |
  </li>
</s:iterator>

2、查询值栈中的数据

<s:iterator var="p" value="hList">
  <li>
    <a href="${ pageContext.request.contextPath }/product_findByPid.action?pid=<s:property value="#p.pid"/>" target="_blank"><img src="${pageContext.request.contextPath}/<s:property value="#p.image"/>" data-original="http://storage.shopxx.net/demo-image/3.0/201301/0ff130db-0a1b-4b8d-a918-ed9016317009-thumbnail.jpg" style="display: block;"></a>
  </li>
</s:iterator>
时间: 2024-08-26 19:03:14

离线分页查询的相关文章

QBC查询、离线条件查询(DetachedCriteric)和分页查询模版

一.QBC检索步骤 QBC检索步骤: 1.调用Session的createCriteria()方法创建一个Criteria对象. 2.设定查询条件.Expression类提供了一系列用于设定查询条件的静态方法, 这些静态方法都返回Criterion实例,每个Criterion实例代表一个查询条件. Criteria的add()方法用于加入查询条件. 3.调用Criteria的list()方法执行查询语句.该方法返回List类型的查询结果,在 List集合中存放了符合查询条件的持久化对象. 比较运

Hibernate的几种查询方式-HQL,QBC,QBE,离线查询,复合查询,分页查询

HQL查询方式 这一种我最常用,也是最喜欢用的,因为它写起来灵活直观,而且与所熟悉的SQL的语法差不太多.条件查询.分页查询.连接查询.嵌套查询,写起来与SQL语法基本一致,唯一不同的就是把表名换成了类或者对象.其它的,包括一些查询函数(count(),sum()等).查询条件的设定等,全都跟SQL语法一样. 示例: Session session = SessionFactory.getCurrentSession(); User user = null; Transaction ts = s

框架 day49 BOS项目练习3(修复window控件BUG,添加/修改/作废取派员,datagrid使用,分页查询(DetachedCriteria离线),formatter函数)

BOS项目笔记第3天 1.    修复window控件bug 把弹出窗口拖动到浏览器窗口外之后无法再拖动     将提供的outOfBounds.js文件复制到项目中     在需要修复的jsp页面引入js文件,可以阻止控件拖出窗口 <script src="${pageContext.request.contextPath }/js/easyui/outOfBounds.js" type="text/javascript"></script&

分页离线条件查询 页面响应500 后端未报异常 list集合有数据

如果 使用同一个Hibernate的DetachedCriteria离线条件查询对象同时查询"过滤后条数" 和 "过滤后的数据集合",那么查询记录数时需要设置聚合函数条件并且 使用聚合函数  代码要在 查询数据集合 之前,如果相反则会查询不到 聚合函数的数据 如下: 原文地址:https://www.cnblogs.com/Zhusi/p/10421457.html

SSH——基于datagrid实现分页查询

1. 修改页面中datagrid的URL地址,访问action // 取派员信息表格 $('#grid').datagrid( { iconCls : 'icon-forward', fit : true, border : false, rownumbers : true,//显示行号 striped : true, pageList: [3,5,10], pagination : true, toolbar : toolbar,//工具栏 url : "${pageContext.reque

框架 day50 BOS项目 4 批量导入(ocupload插件,pinyin4J)/POI解析Excel/Combobox下拉框/分区组合条件分页查询(ajax)/分区数据导出(Excel)

知识点: 批量导入(ocupload插件,pinyin4J /POI解析Excel(apache POI) /区域分页查询 /Combobox下拉框 /分区组合条件分页查询(ajax) /分区数据导出(Excel下载) BOS项目笔记第4天 1.    区域批量导入功能 *Ajax不支持文件上传. *上传并且不刷新上传页面原理: Target到一个0,0,0的隐藏iframe里,造成一个没有刷新的假象 <form target="myIframe" action="ab

JAVAEE——BOS物流项目04:学习计划、datagrid、分页查询、批量删除、修改功能

1 学习计划 1.datagrid使用方法(重要) n 将静态HTML渲染为datagrid样式 n 发送ajax请求获取json数据创建datagrid n 使用easyUI提供的API创建datagrid(掌握) 2.实现取派员分页查询 n 调整页面基于datagrid发送ajax请求 n 创建PageBean封装分页参数 n 定义通用分页查询方法 n 将分页查询结果转为json返回 3.取派员批量删除 n 页面调整 n 服务端实现 4.取派员修改 n 页面调整 n 服务端实现 2 data

Oracle分页查询

一.利用rownum,无order by(最优方案) 如下例查询出来5003行数据,然后扔掉了前面5000行,返回后面的300行.经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响,速度依然. SELECT * FROM (SELECT ROWNUM AS rowno, t.* FROM XXX t WHERE hire_date BETWEEN TO_DATE ('20060501', 'yyyymmdd') AND TO_DATE ('20060731',

Linq高级查询与分页查询

Linq高级查询 以~开头: r=>r.Name.StartsWith("李"); 以~结尾: r=>r.Name.EndsWith("光"); 包含(模糊查询): r=>r.Name.Contains("四"); 数据总个数: Con.Goods.Count();||Con.Users.ToList().count; 最大值: Con.Goods.ToList().Max(r=>r.Price); 最小值: Con.Go