关闭

低版本jfinal集成jfinal2.2的国际化功能实现国际化

标签: 国际化框架jfinal
624人阅读 评论(0) 收藏 举报
分类:
国际化用的人不多,但是也有部分开发是不可或缺的,而正是因为用的人又不是太多,所以网上的资料便更少,今天我就来介绍一下jfinal框架的低版本集成jfinal2.2的国际化功能。

首先说一下,jfinal是一个很好用的框架,上手容易开发极速而且运行效率也不错。

读过jfinal文档的道友都知道jfinal2.2中有国际化的过滤器I18nInterceptor,做国际化用起来非常简单,但是有些项目是用低版本的jfinal做的且不便更新但是又想用国际化怎么办呢,清往下看。

以jfinal1.5为例。

把jfinal2.2的源码包里的com.jfinal.i18n整个包(含三个文件I18n.java、I18nInterceptor.java、Res.java)copy出来放在自己项目中(新建,可自定义)com.jfinal.enhance包下。再把源码正com.jfinal.kit包下的StrKit.java文件放在自己项目中的(新建,可自定义)com.jfinal.enhance.kit包下,然后更改I18n.java、Res.java、StrKit.java三个文件的路径让错误提示消失。更改I18nInterceptor.java文件的路径。并且删除第20行的import com.jfinal.aop.Invocation;将其改成import com.jfinal.core.ActionInvocation;。把第23行的import com.jfinal.kit.StrKit;改成import com.jfinal.enhance.kit.StrKit;。再把第84行的public void intercept(Invocation inv) {中的Invocation改成ActionInvocation。

ok了,完成以上步骤就恭喜你完成了jfinal的国际化功能的集成,然后就可以正常使用国际化了。

友情提示:每个前端框架在web前段上获取国际化数据是不一样的,文档上的只是个示例,我用的beetl上就是需要用${@_res.get("test")}的方式取值。
        国际化js中的东西时可以配置多个不同语言的js根据localeParaName(_locale参数)选择不同的js,或者写一个XML文件通过key取值。

这里写图片描述

2
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2217次
    • 积分:64
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档