java如何在数据库应用程序中最好地处理多种语言?
我有一系列属性文件,用于以各种语言显示消息
因此,根据当前的语言设置,信息可以以英语、法语或德语等语言显示。
在我的数据库中,我有各种各样的记录,而不是实际的值,我把属性文件的键放进了数据库中,这样在使用该数据检索记录时,我可以用相应的语言显示消息
例如,我的数据库中可能有这样一条记录:
John| Smith| AQ| etc
其中,相应属性文件中的AQ
可以显示为Doctor
或Arzt
等。
我的问题是,我需要根据这些属性进行偶然排序,虽然这些属性在数据库中的值是代码,但在数据库中排序是不可能的
从here我得到了使用临时表和排序的建议,但对于1属性来说,这对我来说很好
我正在寻找一种更通用的解决方案来处理多个属性文件,并尽可能避免代码中的检查:
e、 g.if this query sorts on X create this temp table
等
有没有一个通用的解决方案
# 1 楼答案
在应用程序启动时,可以同步包含键、区域设置和实际消息的表。这些将是普通的表,因此您可以在普通的SQL查询中访问它们
但我建议您在应用程序中始终进行您描述的排序,因为这看起来很像应用程序逻辑
# 2 楼答案
与其将语言信息存储在属性文件中,不如将其存储在数据库的表中。然后一切都可以很容易地完成
然后,用本地语言按消息进行的查询排序如下: