截至目前,我们在 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;
}
};