本地化表数据

时间:2011-08-09 06:37:14

标签: jpa localization internationalization

例如:我有一些代码表:

1, Blue, This is blue color
2, Red, This is red color - any text...
3, Green, This is green color
  • 语言数量未知。
  • 表可以有多个本地化字段。
  • 我使用JPA和hibernate来访问这些表。

如何本地化这些代码和说明?

2 个答案:

答案 0 :(得分:0)

认为应该垂直添加本地化而不是水平添加。

这意味着每种语言没有新列,但是语言名称和标识符的分隔表以及具有每种可能语言的本地化值的另一个表。

您上面显示的表格是中性语言的主表格,在您的情况下是英语,那么我上面提到的第二个表格对于字符串ID将具有相同的Ids(1,2,3 ...),然后是一个LanguageId列和具有该LanguageId特定本地化值的LanguageText。

答案 1 :(得分:0)

与其他答案相反:

我认为,您应该创建一个包含区域设置作为额外字段的表。这将使您能够在消息ID和区域设置上构建索引以加快搜索速度。它还会使管理界面(我假设您有一个,因为否则您将使用属性文件)更容易构建,因为您只需要在JPA端使用一个表和一个对象。

表格如下所示:

table messages
   id number,
   message_code number,
   locale string, // or number, depending on your app
   message1 string
   message2 string
   message3 string // or more/less

message_code并非严格必要,但有助于将此表重用于不同的上下文。