如何设计数据库来维护和显示支持不同语言的主数据(i18n)?

时间:2015-10-11 06:11:06

标签: mysql database hibernate spring-mvc internationalization

我们有Spring MVC应用程序,Hibernate用作DAO层,MySql用作数据库。该数据库具有作业标题,技能,行业等的主表。每个主表有2列(id,value)。截至目前,每个主表中的值列都包含ENGLISH语言的数据。展望未来,我们希望主表支持不同的语言(i18n /国际化),如法语,中文,葡萄牙语等。其次,我们在UI上显示此主数据作为自动完成下拉,具体取决于用户在文本中输入的字母表领域。例如: - 如果用户键入" ja"那么价值就像" java,javac,javadci"将使用具有" like"的查询显示在主表的下拉列表中。 where子句中的参数。什么是最好的策略或设计可以解决维护和显示i18n支持的主数据的问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

我只想为每种受支持的语言添加一个值列,并修改请求以在列名中包含区域设置名称。例如:

file_name

SELECT * FROM master WHERE valueEN LIKE 'ja';