WEBAPP开发教程之应用struts的validator验证
沉沙 2018-12-21 来源 : 阅读 2090 评论 0

摘要:本篇教程探讨了WEBAPP开发教程之应用struts的validator验证,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

本篇教程探讨了WEBAPP开发教程之应用struts的validator验证,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

WEBAPP开发教程之应用struts的validator验证

<

 我使用的IDE是Netbeans,用Eclipse开发步骤差不多,先新建Web工程,工程名为WebApp,配置目录结构如下
WebApp/src/com/action/UserAction.java
WebApp/src/com/formbean/UserForm.java
WebApp/web/index.jsp  //登陆页面
WebApp/web/WEB-INF/struts-config.xml
WebApp/web/WEB-INF/web.xml 
WebApp/web/WEB-INF/validation.xml
WebApp/web/WEB-INF/lib/classes/MeaasgeResources.properties
struts1.3.8相关的jar文件放在目录WebApp/web/WEB-INF/lib/
通过validator验证输入的表单是否为空,若为空,则显示 ** is required.的信息
各文件代码如下:
==============UserForm===========
package com.formbean
import org.apache.struts.validator.ValidatorForm;
public class UserForm extends ValidatorForm{
    private String name;
    private String password;
 
    public String getName(){
        return name;
    }
 
    public void setName(String name){
        this.name = name;
    }
 
    public String getPassword(){
        return password;
    }
 
    public void setPassword(){
        this.password = password;
    }
}
==============UserAction.java==================
package com.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;
import com.formbean.UserForm;
public class UserAction extends Action{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response){
return mapping.findForward("index");  //不进行任何处理,只简单地把页面转发回index.jsp
}
}
=================web.xml======================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "//java.sun.com/dtd/web-app_2_3.dtd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
=================struts-config.xml===================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
    "//struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="userform" type="com.formbean.UserForm"></form-bean>
</form-beans>
<action-mappings>
<action path="/login"
type="com.action.UserAction"
name="userform"
validate="true"
input="/index.jsp">
<forward name="index" path="/index.jsp"></forward>
</action>
</action-mappings>
<controller>
</controller>
<message-resources parameter="MessageResources">
</message-resources>
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames"
value="/org/apache/struts/validator/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
</struts-config>
==============validation.xml==========
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE form-validation PUBLIC
    "-//Apache Software Foundation//DTD Commons
    Validator Rules Configuration 1.3.0//EN"
    "//jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">
<form-validation>
<formset>
<form name="userform">
<field property="name" depends="required">
<arg position="0" key="label.regest.name"/>
</field>
<field property="password" depends="required">
<arg position="0" key="label.regest.password"/>
</field>
</form>
</formset>
</form-validation>
=================MessageResources.properties======
# Label Resources
label.search.name = Name
label.search.ssNum=Social Security Number
#Error Resources
error.required = {0} is required.
error.search.criteria.missing = Search Criteria Missing
error.search.ssNum.invalid = Invalid Social Security Number
errors.header = <font color="red"><b><Validaction Error(s)</b></font><ul>
errors.footer=</ul><hr width="100%" size="1" noshade="true">
errors.prefix=<li>
errors.suffix=</li>
errors.invalid={0} is not valid
===================index.jsp====================
<%@page contentType="text/html; charset=UTF-8" language="java"%>
<%@taglib prefix="html" uri="//struts.apache.org/tags-html"%>
<%@taglib prefix="bean" uri="//struts.apache.org/tags-bean"%>
<%@taglib prefix="logic" uri="//struts.apache.org/tags-logic"%>
<html>
<head><title>login</title></head>
<body>
<html:form action="/login">
用户:<html:text property="name"/><br>
密码:<html:password property="password"/><br>
<html:submit value="submit"/>
<html:reset/>
</html:form>
<html:errors/> <!--当表单验证不通过时,显示错误信息-->
</body>
</html>     

本文由职坐标整理发布,学习更多的相关知识,请关注职坐标IT知识库!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved