首页 > 代码库 > JavaEE----使用Struts2的输入校验之手动编码校验
JavaEE----使用Struts2的输入校验之手动编码校验
Struts.xml
<action name="login" class="com.cug.demo04.LoginAction"> <result>/demo04/success.jsp</result> <result name="input">/demo04/login.jsp</result> </action> <action name="login1" class="com.cug.demo04.LoginAction" method="login"> <result>/demo04/success.jsp</result> <result name="input">/demo04/login.jsp</result> </action>login.jsp
<body> <s:fielderror></s:fielderror> <form action="${pageContext.request.contextPath}/login" method="post"> 用户名:<input type="text" name="username"><br/> 密码:<input type="password" name="password"><br/> <input type="submit" value=http://www.mamicode.com/"登陆"/>>package com.cug.demo04; import com.opensymphony.xwork2.ActionSupport; public class LoginAction extends ActionSupport{ private String username; private String password; public void setUsername(String username) { this.username = username; } public void setPassword(String password) { this.password = password; } @Override public String execute() throws Exception { return SUCCESS; } @Override public void validate() { System.out.println("validate~"); if(username==null || username.trim().isEmpty()){ this.addFieldError("username", "用户名不能为空"); } if(password==null || password.trim().isEmpty()){ this.addFieldError("password", "密码不能为空"); }else{ if(password.length()<5 || password.length()>8){ this.addFieldError("password", "密码的长度应该在5~8之间"); } } } public String login(){ return SUCCESS; } public void validateLogin(){ System.out.println("validateLogin~"); } }
1、手动编码校验
在Action类中 编写校验方法
validate() 覆盖ActionSupport ------ 对Action 中所有执行方法 进行校验
* 通过<action> 配置 method属性,执行Action中特定的方法
validateXxx() Xxx就是指定方法名 -------- 对Action中指定方法 进行校验
校验方法执行过程
1)、 params 拦截器 设置请求参数
2)、 conversionError 拦截器 处理类型转换错误
3)、 validation 拦截进行参数有效性校验
优先xml配置文件 、然后 validateXxx 具体方法校验 ,再然后 validate 所有方法执行校验
4)、 workflow 拦截器 判断如果有错误信息 返回 input 如果没有错误信息 执行Action 对应业务处理方法
JavaEE----使用Struts2的输入校验之手动编码校验
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。