struts1.x 国际化配置
说明:
1、在struts.cfg.xml文件中加上:
<message-resources key="backup" parameter="resource.resource" />
2、actionForm类的validate方法:
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (empname.equals("") || empname == null) {
//errors.add("empname", new ActionMessage("客户姓名不能为空",false));
errors.add("empname", new ActionMessage("item.empname.require",true));
}
Pattern pattern = Pattern.compile("^\\d+$");
//matches方法可以判断当前的字符串是否匹配给定的正则表达式。
//如果匹配,返回true,否则,返回false
Matcher matcher = pattern.matcher(age);
boolean b = matcher.matches();
if (b == false) {
//errors.add("age", new ActionMessage("年龄必须是数字",false));
errors.add("age", new ActionMessage("item.age.require"));
}
return errors;
}
或者使用参数的方式:
public ActionForward save(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//获取本地的语言类别
Locale l = request.getLocale();
System.out.println(l.toString());
EmpForm empForm=(EmpForm)form;
//age属性的值不能大于70
ActionMessages errors=new ActionMessages();
if(Integer.parseInt(empForm.getAge())>70){
//errors.add("age", new ActionMessage("您的年纪偏大",false));
Object obj[]=new Object[3];
obj[0]=empForm.getEmpname();
obj[1]=empForm.getAge();
obj[2]=70;
errors.add("age", new ActionMessage("item.age.request",obj));
if(!errors.isEmpty()){
//在requrest对象中保存错误信息
this.saveErrors(request, errors);
}
return mapping.findForward("presave");
}
return mapping.findForward("save");
}
customer.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<!--
uri :注册过的标记库uri
prefix:指定匹配该标记库的标记前缀
-->
<html:html locale="true">
<head>
<title>员工界面</title>
</head>
<center>
<h1>
员工界面
</h1>
</center>
<body>
<center>
<html:form action="customerSave.do?method=save" method="post"
focus="empname">
<table border=1>
<tr>
<td>
<bean:message bundle="backup" key="item.empname"/>:
</td>
<td>
<html:text property="empname" /><html:errors property="empname"/>
</td>
</tr>
<tr>
<td>
<bean:message key="item.sex"/>:
</td>
<td>
<!-- 必须包含value属性 -->
<html:radio property="sex" value="n"></html:radio>
<bean:message bundle="backup" key="item.male"/>:
<html:radio property="sex" value="w"></html:radio>
<bean:message bundle="backup" key="item.female"/>:
</td>
</tr>
<tr>
<td>
<bean:message key="item.age"/>:
</td>
<td>
<html:text property="age"></html:text><html:errors property="age"/>
</td>
</tr>
<tr>
<td>
<bean:message key="item.tel"/>:
</td>
<td>
<html:text property="tel" />
</td>
</tr>
<tr>
<td>
<html:submit>保存</html:submit>
</td>
<td>
<html:reset value="重置"></html:reset>
</td>
</tr>
</table>
</html:form>
</center>
</body>
</html:html>
相关推荐
- **Struts1.x** 配置文件多,包括struts-config.xml、web.xml等,配置繁琐。 - **Struts2.x** 配置文件较少,主要为struts.xml,支持注解配置,减少XML配置的繁琐。 8. **插件与扩展性**: - **Struts1.x** ...
3. **配置文件**:Struts1.x的配置主要分为两个部分:struts-config.xml和web.xml。struts-config.xml定义了Action的映射、Form Beans、数据源、以及其他的配置项。web.xml则配置了Struts Filter和Servlet。 4. **...
Struts1.x的配置相对静态,每个Action的请求处理器(RequestProcessor)配置在web.xml中,不易修改。而Struts2.x通过拦截器栈(Interceptor Stack)实现了动态配置,可以根据需要为不同Action配置不同的拦截器,大大...
- **手动搭建**:在 MyEclipse 中手动添加 Struts1.x 的相关依赖库,配置 web.xml 文件,并创建 struts-config.xml 文件来定义 Action 映射等配置。 - **IDE 工具支持**:利用 MyEclipse 或 Eclipse 等集成开发环境 ...
3. **配置文件**:主要包括struts-config.xml,这是Struts1.x的主配置文件,用于定义Action、ActionForm、ActionMapping等组件。在这里,你可以配置URL与Action类的映射,设置数据验证规则等。 4. **ActionForm**:...
8. **异常处理**:通过配置全局异常处理,Struts 1.x 可以捕获并处理应用程序中抛出的异常,提供统一的错误页面,增强了用户体验。 9. **Validator框架**:Struts 1.x 的Validator框架用于数据验证,可以定义一系列...
1. **安装和配置**:了解如何在项目中集成Struts1.x框架,配置web.xml和struts-config.xml文件。 2. **Action和ActionForm**:深入理解这两者的作用,如何编写和使用它们。 3. **视图渲染**:熟悉JSP页面和Struts...
在Struts1.x中,Controller由ActionServlet实现,它处理HTTP请求,并通过配置文件(struts-config.xml)调度Action类来执行特定的业务逻辑。 接下来,我们将逐步了解如何创建一个简单的Struts1.x应用: 1. **搭建...
通过分析这个Struts1.x_Project,我们可以学习到如何配置Struts框架,理解ActionForm、Action、Struts-config.xml的作用,以及如何实现I18N和表单验证。同时,项目的数据库操作部分也是Java Web开发中重要的实践环节...
通过这个简单的Struts1.x登录示例,你可以了解Struts1.x的MVC工作流程、配置文件的编写以及Action和ActionForm的使用。然而,需要注意的是,Struts1.x已经较为过时,现代的Web开发更多地转向了Spring MVC、Play ...
Struts1.x是一个经典的Java Web框架,用于构建MVC(模型-视图-控制器)架构的应用程序。在国际化(i18n)方面,Struts1提供了强大的支持,使得应用程序可以适应不同语言和地区的用户需求。以下是关于Struts1.x国际化...
对struts1.x简单应用的介绍及实例,对初学者有很大的帮助
Struts 1.x 是一个经典的Java Web开发框架,由Apache软件基金会开发,它极大地简化了MVC(模型-视图-控制器)架构的实现。如果你正在寻找如何搭建Struts 1.x的开发环境,以下是一些关键的知识点,以及这些指定的jar...
**Struts2.x与Struts1.x对比**:相较于Struts1.x,Struts2.x具有更多的优势,如不再强制要求ActionForm,配置文件更简洁,处理流程更加清晰。具体而言,请求首先被过滤器捕获,然后根据`struts.xml`文件的配置调用...
总的来说,Struts1.x的多文件上传功能通过合理的表单设计、框架配置和后端处理,可以方便地实现用户在Web应用中上传多个文件。然而,随着技术的发展,现在的Web应用更多地转向了Spring MVC等更现代的框架,它们提供...
Struts1.x 提供了一系列的拦截器(Interceptor)和动作(Action)来处理用户请求,并通过配置文件(struts-config.xml)来定义这些请求的映射关系。在这个购物车系统中,Struts1.x 负责接收用户的HTTP请求,调用相应...
Struts1.x是Apache软件基金会旗下Jakarta项目的一个核心组件,它是一款开源的MVC(Model-View-Controller)框架,用于构建企业级Java Web应用程序。这个框架在2000年代初非常流行,因其规范化的开发流程和强大的功能...
通过本系列教程的学习,读者将能够掌握Struts 1.x框架的基本使用方法,了解其核心组件和配置,并能够通过实践来加深对Struts 1.x开发过程的理解。同时,通过与Struts 2.x的比较,读者可以更深入地理解Web应用框架的...
- **配置文件**:`struts-config.xml`是Struts1的配置文件,定义了Action类和ActionForm对象,以及URL到Action的映射。 - **ActionForm**:用于接收并封装来自客户端的表单数据,然后传递给Action处理。 2. **...