博客
关于我
Struts使用包范围的国际化资源实战
阅读量:170 次
发布时间:2019-02-28

本文共 3079 字,大约阅读时间需要 10 分钟。

Struts 项目优化与开发实践

一、动作类开发

package org.crazyit.app.action;import com.opensymphony.xwork2.*;public class LoginAction extends ActionSupport {    private String username;    private String password;    public void setUsername(String username) {        this.username = username;    }    public String getUsername() {        return username;    }    public void setPassword(String password) {        this.password = password;    }    public String getPassword() {        return password;    }    public String execute() throws Exception {        ActionContext ctx = ActionContext.getContext();        if (getUsername().equals("crazyit.org") && getPassword().equals("leegang")) {            ctx.getSession().put("user", getUsername());            ctx.put("tip", getText("succTip"));            return SUCCESS;        } else {            ctx.put("tip", getText("failTip"));            return ERROR;        }    }}

二、资源文件配置

项目中使用了多个国际化资源文件,主要用于不同语言的显示与处理。以下是相关文件的详细内容:

  • package_zh_CN.properties
  • failTip=Package %u6d88%u606f%a0%u5bf9%u4e0d%u8d77%a0%u60a8%u4e0d%u80fd%u767b%u5f55%01succTip=Package %u6d88%u606f%a0%u6b22%u8fce%a0%u60a8%u5df2%u7ecf%u767b%u5f55%01username.required=Package %u6d88%u606f%a0%u7528%u6237%u540d%u662f%u5fc5%u9700%u7684%01
    1. loginForm_zh_CN.properties
    2. # JSP 页面相关配置loginPage=JSP %u6d88%u606f%a0%u767b%u5f55%u9875%u9762errorPage=JSP %u6d88%u606f%a0%u9519%u8bef%u9875%u9762succPage=JSP %u6d88%u606f%a0%u6210%u529f%u9875%u9762failTip=JSP %u6d88%u606f%a0%u5168%u5c40%u6d88%u606f%a0%u5bf9%u4e0d%u8d77%a0%u60a8%u4e0d%u80fd%u767b%u5f55%01succTip=JSP %u6d88%u606f%a0%u5168%u5c40%u6d88%u606f%a0%u6b22%u8fce%a0%u60a8%u5df2%u7ecf%u767b%u5f55%01user=JSP %u6d88%u606f%a0%u7528%u6237%u540dpass=JSP %u6d88%u606f%a0%u7801login=JSP %u6d88%u606f%a0%u767b%u5f55
      1. result_en_US.properties
      2. resultPage=Log In Result

        三、校验文件配置

        项目使用了Struts的验证插件,对Action类的属性进行了必要的校验:

        true

        四、配置文件设置

        /WEB-INF/content/loginForm.jsp
        /WEB-INF/content/result.jsp
        /WEB-INF/content/result.jsp
        /WEB-INF/content/{1}.jsp

        五、视图文件开发

      3. loginForm.jsp
      4. <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %><%@ taglib prefix="s" uri="/struts-tags" %>
        <s:text name="loginPage" />
        1. result.jsp
        2. <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %><%@ taglib prefix="s" uri="/struts-tags" %>
          <s:text name="resultPage" /> ${requestScope.tip}

          六、测试与部署

          通过以上配置,完成了一个完整的Struts项目开发。项目涉及多个方面的配置,包括动作类开发、资源文件管理、校验文件设置、配置文件优化以及视图文件编写等。通过合理的国际化资源管理和Struts框架的灵活运用,实现了用户登录功能的多语言支持和用户体验优化。

    转载地址:http://vsmj.baihongyu.com/

    你可能感兴趣的文章
    nullnullHuge Pages
    查看>>
    NullPointerException Cannot invoke setSkipOutputConversion(boolean) because functionToInvoke is null
    查看>>
    null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
    查看>>
    Numix Core 开源项目教程
    查看>>
    NumPy 或 Pandas:将数组类型保持为整数,同时具有 NaN 值
    查看>>
    numpy 或 scipy 有哪些可能的计算可以返回 NaN?
    查看>>
    numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32
    查看>>
    numpy 数组与矩阵的乘法理解
    查看>>
    NumPy 数组拼接方法-ChatGPT4o作答
    查看>>
    numpy 用法
    查看>>
    Numpy 科学计算库详解
    查看>>
    Numpy.fft.fft和numpy.fft.fftfreq有什么不同
    查看>>
    Numpy.ndarray对象不可调用
    查看>>
    Numpy如何使用np.umprod重写range函数中i的python
    查看>>
    numpy数组替换其中的值(如1替换为255)
    查看>>
    numpy数组索引-ChatGPT4o作答
    查看>>
    numpy转PIL 报错TypeError: Cannot handle this data type
    查看>>
    NutzCodeInsight 2.0.7 发布,为 nutz-sqltpl 提供友好的 ide 支持
    查看>>
    NUUO网络视频录像机 css_parser.php 任意文件读取漏洞复现
    查看>>
    NVelocity标签使用详解
    查看>>