SpringBoot+Freemarker 国际化的问题

问题描述

现在有个需求,在后台管理可以切换系统的语言,而不是说根据用户所在的区域而自动选择。有点类似于Wordpress的那个语言选择,如图:
图片描述

图片来源:https://www.wpdaxue.com/admin...

自己尝试过哪些方法

在网上查了一圈,都是根据用户所在区域或者浏览器的语言而自动切换,现在需要的是,用户设置之后,一直保持这个语言的状态,也就是说在任何地方都是这个语言。保存用户设置已经做好了,用的key-value来存储的,也就是说,可以加个language为key的数据。

阅读 3.8k
1 个回答

页面是Freemarker render出来的吗?如果是的话,所有模板中的需要多语言的文字,在翻译时,不要按照系统locale来,而按照你存在key-value里的language来翻译就可以了,因为这个使用非常频繁,通常会缓存下来,直到下次修改语言的时候再刷新下。

如果这个语言设置是每个登录用户独立设置的,则还需要把这个语言设置存在当前用户的设置里,也就是翻译时要先去当前登录用户,再根据当前登录用户查到用户设置的语言。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题