日期:2014-05-18  浏览次数:20807 次

求一个国际化的数据库实现思想
问题哦:
公司刚刚要多语言国际化网站   3种语言   简体   繁体   英文   (用STRUTS)
我不太明白   后台数据库如何实现  
主要不明白显示的时候,(在资源文件里面的都以编译过了没有问题)而数据库中取出的数据怎么办(如何判断属于那种语言)难道要设置3个数据库。。。。。。。
刚要用国际化可能问题比较弱。。。。。。
给位同仁给个建议吧

------解决方案--------------------
那样的话你可以将提交的数据进行分类后再保存数据库中,你可以在数据库中加一个字段来标识属于那个语种(比如用0来表示简体,用1来表示繁体,用2来表示英语)等等
------解决方案--------------------
我曾经看到过一段用JS实现的繁体和简体替换的网页代码,实现的方式是将常用的简体、繁体汉字做一个对照表,在做繁简切换时,将存在于对照表中的汉字替换就OK了。
不过你要英文的,确实不好办,估计要真的在建立一套英文的资源库了。还有一个就是英文和中文现在不一样,你的整个界面布局都要调整。
------解决方案--------------------
可以用request.getLocal()来获得当前的语言,调用相应的资源文件实现页面国际化,但是你想把数据库也国际化肯定是不可能的,就好比 数据库存的是中文的文章,你能把它直接翻译成英文?连目前的翻译工具都翻译的驴头不对马嘴,又怎么可以通过编码来国际化数据库呢? 呵呵
应该只是要求把页面元素国际化吧,如果硬要把显示的内容国际化 那肯定是要人工翻译 并存成不同的数据库了
------解决方案--------------------
这根本就是一个数据库设计方面的问题,也不用说什么国际化不过国际化的,最简单的设计三套数据库表就完了, 至于怎么控制的在程序里实现就得了,如果想扩展性好一点另当别论。 静态信息的本地化STRUTS可以实现的很好。
------解决方案--------------------
呵,我前段时间才问了这个问题。用三个数据库,这样最好。
必定,在英文语系上面,不可能把中文的内容显示出来吧?
在properties文件中,指定相对应的数据库名称及连接信息便可。。。
------解决方案--------------------
用三套库吧。

这样比较容易控制。

页面需要三套资源文件。

简单的说,做三套网站。
------解决方案--------------------
其实不太必要国际化数据库
因为既然是由用户输入的无论他用哪种语言通常都只是单一的一种
他不会同时输入多套语言吧
关心的只是编码方式而已
当然如果数据库里的字典表除外
------解决方案--------------------
数据库设置UTF-8格式
用不同地字段放中文和英文
一般都是这样做
比较取巧地是,简体中文 和 繁体中文可以用字库或者其他方法互转
------解决方案--------------------
还用这么多讨论吗?????总把问题想那么复杂。

按语言分类就是了。
用户选择了哪个版面,就确定了他所接受的语言种类。
在该种类中,任何信息的提交就作为该语言种类的内容存入对应的表中。虽然也可以用一个表,加上语言种类字段,但不如分表清晰。
在配置文件中,对语言种类和对应的信息表作上关联。
信息的显示和维护,都只能是按语言独立来的。不可能用中文发布一条信息你就让英文用户也看到,自动翻译还没到这种精确的地步。