0
截至目前,我们正在为Dojo数据网格提供客户端排序。现在我们需要增强服务器端排序意味着排序应该适用于网格上的所有页面。我们在主表上加入了4张表,并且现在有2个lac记录,并且可能会增加。当执行SQL时,需要5-8分钟的时间才能将所有记录提取到我的java代码中,并且需要对它们应用一些计算,并使用比较器提供自定义排序。我们有每个比较器来表示每一列。服务器端对大数据进行排序
我的担心是如何在短时间内将整个数据提供给服务层代码?有没有办法通过数据源配置来提高执行速度?
return new Comparator<QueryHS>() {
public int compare(QueryHS object1, QueryHS object2) {
int tatAbs = object1.getTatNb().intValue() - object1.getExternalUnresolvedMins().intValue();
String negative = "";
if (tatAbs < 0) {
negative = "-";
}
String tatAbsStr = negative + FormatUtil.pad0(String.valueOf(Math.abs(tatAbs/60)), 2) + ":"
+ FormatUtil.pad0(String.valueOf(Math.abs(tatAbs % 60)), 2);
// object1.setTatNb(tatAbs);
object1.setAbsTat(tatAbsStr.trim());
int tatAbs2 = object2.getTatNb().intValue() - object2.getExternalUnresolvedMins().intValue();
negative = "";
if (tatAbs2 < 0) {
negative = "-";
}
String tatAbsStr2 = negative + FormatUtil.pad0(String.valueOf(Math.abs(tatAbs2/60)), 2) + ":"
+ FormatUtil.pad0(String.valueOf(Math.abs(tatAbs2 % 60)), 2);
// object2.setTatNb(tatAbs2);
object2.setAbsTat(tatAbsStr2.trim());
if(tatAbs > tatAbs2)
return 1;
if(tatAbs < tatAbs2)
return -1;
return 0;
}
};
你想一次获取并排序2个lac记录,或者有任何分页涉及? –
如果您需要将其他数据加载到其他任何批量处理中,则会出现设计问题,而不是编程问题。 –
@Debojit Saikia,是的我在客户端和服务器端都有分页。但是我需要在Java/Service层和应用排序上执行一些计算。之后,我必须向UI发送结果列表(此处为0到20个结果)。 – CHowdappaM