gpt4 book ai didi

java - java中的比较器和可比较的负面场景

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:51:16 24 4
gpt4 key购买 nike

我正在使用 java 实现网络服务。在这个实现中有以下步骤

1) 使用 hibernate 获取值到数据库中。

2) 获取存储在类 bean 列表类型中的值

List<IdentityDocArchive> resultList = q.getResultList();  

3) 然后我对最后更新日期进行排序

 Collections.sort(identityDocList, new Comparator<IdentityDocArchive>() {
DateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
@Override
public int compare(IdentityDocArchive o1, IdentityDocArchive o2) {
try {
return f.parse(o2.getLastUpdtDt().toString()).compareTo(f.parse(o1.getLastUpdtDt().toString()));
} catch (ParseException e) {
LOGGER.warning("Failed To Parsing string to date ".concat(e.getMessage()));
throw new IllegalArgumentException(e);
}
}
});

4) 现在这个列表值存储到另一个列表中

我的问题是,如果不是更好的方法,那是正确的实现方法。

最佳答案

您使用 Hibernate,因此您还应该使用 hibernate/JPA 来对数据进行排序。通过 named query order by ... 或通过 CriteriaQuery.orderBy(...) .您可能还想查看 Java EE persistence tutorial为此。

您也可以使用Collections.sort 对其进行手动 排序,但这样您就完成了数据库的预期工作。 (免责声明:您当然应该相应地设置您的数据库:索引等)

关于java - java中的比较器和可比较的负面场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41958261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com