@Override
public String execute() throws Exception {
// this.items = this.service.getDocumentItemsByCatalogId(catalogId);
//为如果没有点击排序图标而是通过跳转到列表页面时设置默认情况
if(property==null){
property="createDate";
way="desc";
}
this.items = this.service.getDocumentItemsByCatalogIdAndcondition(catalogId, property, way);
for (DocumentItem item : items) {
item.setIconType(this.service.getIconType(item.getType()));
}
return SUCCESS;
}
因为items的查找是通过传排序条件来得到的,而删除,更新等操作完成后一般也会转到这个页面,但如果让它们在传过来的过程中把这些条件的属性值也传过来就不太合适了,这时可以使用上面的方法,当这些属性值为空时就给它们设定相应的默认值就可以了,且可以同时只使用同一个方法来进行所有的列表操作,上面的property指排序的列名,如该查询方法的实现为:
@SuppressWarnings("unchecked")
public List<DocumentItem> getDocumentItemsByCatalogIdAndcondition(long catalogId, String property, String way) {
StringBuffer sb = new StringBuffer();
sb.append("from DocumentItem bean where bean.catalog.id=? order by bean.").append(property).append(" ").append(way);
List<DocumentItem> list =(List<DocumentItem>) getHibernateTemplate().find(sb.toString(),catalogId);
return list;
}
上面的方法中要注意hql语句不可以为 order by bean.?这样来传参数,所以这就是为什么使用StringBuffer来拼凑字符串了,注意StringBuffer的使用方法,得到一个实例后就可以直接append,而不是sb="ss".append(..)
分享到:
相关推荐
冒泡排序是一种基础的排序算法,它通过重复遍历待排序的序列,比较相邻元素并交换位置,使得每个遍历过程都将当前未排序的最大(或最小)元素“冒泡”到序列末尾。这种排序方法适合小规模数据的排序,但效率相对较低...
/** 插入式排序, 将后组每个元素取出与前组逐一比较,找到位置插入 */ public static void insertSort(int[] ary){ int i,j,t; for(i=1; i; i++){ t=ary[i]; System.out.print(Arrays.toString(ary));//跟踪...
快速排序的三种写法主要指的是不同的选取“基准”(pivot)的方式: 1. **固定基准法**:通常选取序列的第一个元素或最后一个元素作为基准。这种方法简单,但在处理部分有序或者完全有序的数组时效率较低。 2. **...
在Vue.js中实现页面div元素的拖拽排序功能可以极大地提升用户体验,特别是在构建可自定义布局的应用时。这里我们探讨的是一种基于CSS3 `transition-group` 的方法,它允许我们优雅地实现拖放动画和排序。 首先,让...
下面详细介绍冒泡排序算法的写法和要点。 1. 主要思想:冒泡排序的基本思想是通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就像...
"插入排序递归非递归汇编写法" 插入排序是常用的排序算法之一,它的时间复杂度为O(n^2),空间复杂度为O(1)。在本实验报告中,我们将使用MIPS汇编语言来实现插入排序,包括递归和非递归版本。 递归版本 在递归版本...
这些排序算法各有优缺点,例如冒泡排序和插入排序简单但效率较低,适合小规模数据;选择排序和快速排序效率较高,但快速排序在最坏情况下性能会下降;归并排序和堆排序则是稳定的排序算法,适用于大规模数据。在实际...
这里我们主要探讨的是使用Java实现的几种经典排序算法,包括直接选择排序、堆排序、冒泡排序、快速排序、直接插入排序、折半插入排序、Shell排序、归并排序、桶式排序和基数排序。这些算法各有特点,适用于不同的...
在插入算法中,实际上是增量法,现在我们在寻找位置的时候增加效率,通过二分查找来选择。
js冒泡排序的几种写法,如果要面试,可以借鉴一下
二差排序树树,关于数据结构的二差排序树,仅供参考!!!!!!!!!!!!!!!!!!!
总结,jQuery虽然不直接提供数据排序功能,但通过与JavaScript原生方法和插件结合,可以实现多样化和高效的数据排序。无论是简单的DOM元素排序,还是复杂的表格数据处理,都有相应的解决方案。同时,了解和掌握这些...
快速排序是一种高效的排序算法,由英国计算机科学家C.A.R. Hoare在1960年提出。它的基本思想是分治法(Divide and Conquer),通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的...
快速排序是一种高效的排序算法,由英国计算机科学家C.A.R. Hoare在1960年提出。它的基本思想是分治法(Divide and Conquer),即把一个大问题分解成若干个小问题来解决,最终将小问题的结果合并得到原问题的解。在这...
快速排序是一种高效的排序算法,由英国计算机科学家C.A.R. Hoare在1960年提出。它基于分治策略,通常比其他O(n^2)时间复杂度的排序算法更快,平均时间复杂度为O(n log n)。在最坏的情况下,即输入数组已经完全排序或...
合并排序的C程序。递归写法。第一次上传文件。谢谢大家支持。
table表格,让thead固定,tbody有滚动条,关键是都对齐的纯css写法。table表格,让thead固定,tbody有滚动条,关键是都对齐的纯css写法。table表格,让thead固定,tbody有滚动条,关键是都对齐的纯css写法。table...
sort 排序有很多实践应用,如按照成绩排序、按照年龄排序、按照姓名排序等。在实际编程中,sort 排序可以帮助我们快速地对大量数据进行排序。 六、总结 sort 排序是 STL 库中的一个重要函数,它可以对数组、结构体...
快速排序是一种高效的排序算法,由英国计算机科学家C.A.R. Hoare在1960年提出。它的基本思想是分治法(Divide and Conquer),通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的...
首先,让我们来看看MVP的两种写法: 1. 接口型MVP(Interface-based MVP) 在接口型MVP中,Presenter层通过接口与View和Model进行交互。这样做的好处是提高了代码的解耦度,使得Presenter和View可以独立地进行单元...