首页 > 代码库 > Struts2 校验数据问题
Struts2 校验数据问题
我们会经常遇到一下问题,例如我在前端输入数据,把数据发送到和后台,我首先要校验这个数据,
比如说:前端必须输入一个日期类型的数据,后端才能正确接收,要是输入一个不是日期型的数据,
那么后端就要把数据打回去,并且提示或者跳转到错误页面。那么怎么去校验呢?
f废话不多说,直接添代码,最直观的方法。
前端代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="http://www.mamicode.com/"> <title>首页</title> </head> <body> <form action="actions/user" method="post"> 姓名:<input type="text" name="name"><input type="submit"value="http://www.mamicode.com/提交"> </form> </body> </html>
我这里要向后台发送的是一个姓名的数据,姓名必须不能是空,必须是admin否则会跳到错误页面。
Java代码:
public class One_action extends ActionSupport { private String name;//姓名 public String getName() { return name; } public void setName(String name) { this.name = name; } public String add() { if(name==null|| !name.equals("admin")){ this.addFieldError("name", "name is Error"); return "error"; } return SUCCESS; } }
add方法就是校验数据的方法。add方法调用的addFiledError方法
struts.xml的配置中文件代码:
<package name="student" extends="struts-default" namespace="/actions"> <action name="user" class="DataValidation.One_action" method="add"> <result name="error"> /user_add_error.jsp </result> </action> </package>
在Java中return “error” 的error一定和struts.xml中的result 中的name属性相对应。
当输出不正确的值是,就可以调到错误页面啦。
错误页面jsp代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@taglib uri="/struts-tags" prefix="s" %><%--自定义标签 --%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>‘user.jsp‘</title> </head> <body> User add error; <s:fielderror fieldName="name" theme="simple"></s:fielderror> <br> <s:property value="http://www.mamicode.com/errors.name[0]"/> <s:debug></s:debug> </body> </html>
这里用了自定义标签。
错误页面显示:
User add error;
- name is Error
name is Error
[Debug]
Struts2 校验数据问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。