我正在开发一个遗留应用程序。在JSP中有一个html表。我需要编写功能来根据用户点击的列对表进行排序。
表格在每页显示20行。有些表有3000行。所以,可以有大约150页。单击每个页面#,将调用servlet并获取下一行。所以每次点击都是一个新请求。
我的问题是:当页面显示时,默认情况下列按升序排列。接下来点击列,应该按顺序排序(应排序所有3000行),反之亦然。他们可以对大约10列进行数据排序。我怎么能这样做。
答案 0 :(得分:0)
对象数组很容易排序:您创建一个自定义Comparator
,它将根据构造函数参数比较不同的字段。然后你调用Arrays.sort()
,传递你的数组和自定义比较器。这在Java教程中讨论:http://download.oracle.com/javase/tutorial/collections/interfaces/order.html
要识别要排序的字段,您只需传递一个请求参数即可。你构造了这个表,每个标题都有一个onClick
事件,它发送一个带有给定参数的新请求(我确信有一个更现代的方法,其他人可能会回答这个问题)。
但是当你说数组存储为 request 属性时,如果你是正确的话,这些都不会起作用。您确定它没有存储为会话属性吗?