我的应用程序正在使用搜索功能,有时搜索可能会返回包含数千个项目的结果集,因此我使用延迟加载并仅检索主键。
问题是我的应用程序是本地化的,我需要使用表中另一列的字母顺序对这些主键进行排序,该列的名称稍后在代码中本地化(使用典型的键值对.properties文件),此排序因区域设置而异。
我知道一个解决方案是拥有另一个表,它基本上包含了我用于本地化的.properties文件。但这似乎是一个极端的解决方案,有没有其他方法可以实现这一目标?提前谢谢。
答案 0 :(得分:1)
不,不是真的。
你基本上是说“从数据库中检索主键,使用.properties文件来模拟另一个数据库,在应用程序中排序”,对吗?在步骤1之后,数据库并没有真正进入这个等式。
您提出的解决方案(将.properties文件导入表中,在那里排序)实际上从您提供的数据中听起来非常合理。这些.properties文件多久更改一次?你能自动化这个过程吗? (例如,重新导入已更改的文件)
此外,数据库擅长排序和过滤大量数据;在90%的情况下,在不同的层中执行此操作的效率会降低 - 从长远来看,重新发明数据库外的数据库轮是非常痛苦的。