Struts2 简单数据验证
来源:互联网 发布:js文件上传原理 编辑:程序博客网 时间:2024/05/17 02:41
1、struts.xml
<struts> <constant name="struts.devMode" value="false" /> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <constant name="struts.i18n.encoding" value="utf-8"></constant> <package name="user" extends="struts-default"> <action name="user" class="com.wxh.action.UserAction" > <result >/useraddsuccess.jsp</result> <result name="error">/addError.jsp</result> </action> </package> </struts>
2、UserAction.java
package com.wxh.action; import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport{private static final long serialVersionUID = 1L; private String name;public String add(){
//逻辑判断if(name==null || !name.equals("admin")){this.addFieldError("name", "name is error");this.addFieldError("name", "name is too long");return ERROR;//返回到result的name为“ERROR”所指定的jsp页面。}return SUCCESS;}public String getName() {return name;}public void setName(String name) {this.name = name;}}
<body>使用addFieldError方法和s:fieldError标签简单处理数据校验<a href="user!add?name=小王">添加用户</a></body>
4、addError.jsp
<%@taglib uri="/struts-tags" prefix="s" %><!--用到ognl表达式时需要这句-->
<body>User Add Error!<s:fielderror fieldName="name" theme="simple"/><br/><s:property value="error.name[0]"/><s:debug></s:debug></body>
验证用户名和密码实验:
index.jsp
<body><form name="form1" method="get" action="login">用户名:<input name="username" type="text"><br /> 密码:<input name="userpwd" type="password"><br /> <input name="submit"type="submit" value="提交"> <input name="submit2" type="reset"value="重置"></form></body>
<package name="default" namespace="/" extends="struts-default"> <action name="login" class="com.user.action.UserAction"> <result name="success">/success.jsp</result> <result name="failure">/failure.jsp</result> </action> </package>
UserAction
package com.user.action;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport {private String username;//定义username变量private String userpwd;//定义userpwd变量//分别为它们创建set和get方法public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getUserpwd() {return userpwd;}public void setUserpwd(String userpwd) {this.userpwd = userpwd;}@Override//定义一个执行方法,可在里面加入判断public String execute() throws Exception {//判断接收的密码是否和123456相同,相同返回success结果到struts.xml//失败则返回回failure结果到struts.xmlif(userpwd.equals("123456")){return "success";}else{return "failure";}}}
带权限的验证
index.jsp
<body> <form name="form1" method="get" action="login"> 用户名:<input name="username" type="text"><br/> 密码:<input name="userpwd" type="password"><br/> 权限:<input type="radio" value="admin" name="type">管理员 <input type="radio" value="teacher" name="type"> 教师 <input type="radio" value="student" name="type">学生<br> <input name="submit" type="submit" value="提交"> <input name="submit2" type="reset" value="重置"> </form> </body>
<constant name="struts.devMode" value="false" /> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <constant name="struts.i18n.encoding" value="utf-8"></constant> <package name="default" namespace="/" extends="struts-default"> <action name="login" class="com.user.action.UserAction"> <result name="success">/success.jsp</result> <result name="failure">/failure.jsp</result> <result name="admin">/admin.jsp</result> <result name="student">/student.jsp</result> <result name="teacher">/teacher.jsp</result> </action> <action name="hello"> <result> /hello.jsp </result> </action> </package>
UserAction.java
package com.user.action;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport {private String username;//定义username变量private String userpwd;//定义userpwd变量//分别为它们创建set和get方法private String type;//定义权限类型public String getType() {return type;}public void setType(String type) {this.type = type;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getUserpwd() {return userpwd;}public void setUserpwd(String userpwd) {this.userpwd = userpwd;}@Override//定义一个执行方法,可在里面加入判断public String execute() throws Exception {//判断接收的密码是否和123456相同,相同返回success结果到struts.xml//失败则返回回failure结果到struts.xmlif( userpwd.equals("123") ){if(type.equals("admin"))return "admin";if(type.equals("teacher"))return "teacher"; }if(type.equals("student")&& userpwd.equals("123") )return "student";return "failure";}}
带权限的验证第二种方法:
UserAction
package com.user.action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport {private String username;//定义username变量private String userpwd;//定义userpwd变量//分别为它们创建set和get方法private String type;//定义权限类型public String getType() {return type;}public void setType(String type) {this.type = type;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getUserpwd() {return userpwd;}public void setUserpwd(String userpwd) {this.userpwd = userpwd;}@Override//定义一个执行方法,可在里面加入判断public String execute() throws Exception {//判断接收的密码是否和123456相同,相同返回success结果到struts.xml//失败则返回回failure结果到struts.xmlActionContext ac=ActionContext.getContext();if( userpwd.equals("123") ){if(type.equals("admin")){ac.put("type",type);return "true";}if(type.equals("teacher")){ac.put("type", type);return "true"; } if(type.equals("student")) { ac.put("type", type); return "true"; }}else{return "false";}return "false";}}
struts.xml
<package name="default" namespace="/" extends="struts-default"> <action name="login" class="com.user.action.UserAction"> <result name="true">/success.jsp</result> <result name="false">/failure.jsp</result> </action> <action name="hello"> <result> /hello.jsp </result> </action> </package>
success.jsp
<body>欢迎${type}</body>
0 0
- struts2简单数据验证
- struts2简单数据验证
- Struts2 简单数据验证
- struts2 简单数据验证
- struts2 简单数据验证
- Struts2 简单的数据验证
- struts2 在Action简单数据验证,取得request,session,application,
- 道听途说Struts2之10:简单的数据验证
- Struts2 学习笔记 08 简单的数据验证
- struts2之数据验证
- Struts2表单数据验证
- Struts2数据验证机制
- struts2数据验证机制
- Struts2的数据验证
- Struts2数据验证机制
- struts2表单数据验证
- Struts2-数据验证
- struts2中的数据验证
- Iteratee概念
- 各种数据库JDBC 连接方式
- Java的注解机制——Spring自动装配的实现原理
- 词袋模型基本原理(Bag of words)
- 斜杠/和反斜杠\的区别
- Struts2 简单数据验证
- Struts2标签库(三)之表单标签
- 虚幻UE4碰撞系统
- android 网络框架性能优化分析
- 集合简单总结
- CSS中display/float/position属性值的相互影响
- RecyclerView的使用(2)之多Item布局的加载
- Spark 基础(一)
- C++基本概念——构造函数