- 浏览: 286757 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
cheetah_ysc:
不错不错,我喜欢!
Java固定时间间隔执行 -
voyage_mh:
阿选百度竟然一下可以吧你百度出来
使用DWR注解Annotation
JSP请求
<%@ 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="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
使用addFieldError方法和s:fieldError标签简单处理数据校验
<a href="user/User_add?name=a" >添加用户</a>
</body>
</html>
struts.xml文件的配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>
<package name="user" namespace="/user" extends="struts-default">
<action name="*_*" class="com.lbx.action.{1}Action" method="{2}">
<result name="success">/{1}_{2}_success.jsp</result>
<result name="error">/{1}_{2}_error.jsp</result>
<!-- {0}_success.jsp -->
</action>
<action name="regist" class="com.lbx.action.RegistAction">
<result name="input">/regist.jsp</result>
<result>/show.jsp</result>
</action>
</package>
</struts>
通过struts.xml文件找到对应的Action(这里是通过addFileError方法来实现验证)
package com.lbx.action;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class UserAction extends ActionSupport{
private String name;
public String add() {
System.out.println("name=" + name);
if(name == null || !name.equals("admin")){
this.addFieldError("name", "name is error");
this.addFieldError("name", "name is too long");
return ERROR;
}
return SUCCESS;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
与之相对应的result:
success
<%@ 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="<%=basePath%>">
<title>My JSP 'user_add_success.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
用户添加成功!!!! <br>
</body>
</html>
input
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib uri="/struts-tags" prefix="s" %>
<%
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="<%=basePath%>">
<title>My JSP 'User_add_error.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
用户添加失败!! <br>
<s:fielderror fieldName="name" theme="simple"></s:fielderror>
<br>
<s:property value="errors.name[0]"/>
<s:debug></s:debug>
</body>
</html>
<%@ 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="<%=basePath%>"> <title>My JSP 'user_add_success.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> 用户添加成功!!!! <br> </body> </html>input
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@taglib uri="/struts-tags" prefix="s" %> <% 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="<%=basePath%>"> <title>My JSP 'User_add_error.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> 用户添加失败!! <br> <s:fielderror fieldName="name" theme="simple"></s:fielderror> <br> <s:property value="errors.name[0]"/> <s:debug></s:debug> </body> </html>
发表评论
-
Struts2类型转换
2010-12-17 14:46 13541.自定义类型转换器 第一步:编写自定义的转换器类 ... -
Struts2的基本原理
2010-12-17 14:35 1212Struts2 的基本工作流程 Struts2框架是由 ... -
Strut2使用拦截器过滤权限问题
2010-10-18 19:27 1295JSP请求(login.jsp) <%@ page ... -
Strrts2基于Annotation的输入验证
2010-10-18 17:35 1162客户端jsp请求Action代码 <%@ page ... -
Struts2异常处理
2010-10-18 12:28 1318异常映射分为两种:局部异常映射,全局异常映射。局部异常映射会 ... -
Struts2向结果传参数
2010-10-15 11:43 1907JSP请求页面(传参) &l ... -
Struts2动态指定结果
2010-10-14 22:32 1254Jsp反问页面 <%@ page language= ... -
Strut2中Action的Result类型
2010-10-14 22:16 1595type="dispatcher" 只是跳 ... -
Web中request,session,application的获取(1)
2010-10-14 17:51 1106jsp请求 <%@ page language=&q ... -
文件下载(struts2 Action)
2010-10-10 11:34 1717客户端jsp请求Actin <%@ page lan ... -
文件下载(超链接)
2010-10-10 11:09 1085文件下载有时候很简单,直接通过一个超链接就可以实现文件下载(注 ... -
Struts2多文件上传
2010-10-10 00:03 894可以是数组也可以是list和map jsp请求代码 A ... -
Struts2上传文件通过配置文件实现文件过滤
2010-10-09 18:07 3245客户端端jsp请求 <%@ page content ... -
Struts2上传文件手动实现文件过滤
2010-10-09 17:10 2890在实现了上传的功能的情况下,再加一点点代码就可以实现手动文件 ... -
Struts2上传文件(2)
2010-10-09 14:08 837html请求 Action处理(和前面那个上传基本一样 ... -
Struts2上传文件
2010-10-09 13:31 1073struts上传需要的jar包 ... -
Action基本的验证(校验规则文件)
2010-10-06 10:47 977客户端jsp请求 <%@ page language= ... -
使用action属性接收参数,中文问题
2010-10-05 16:08 1134客户端JSP请求(这里可 ... -
使用模型驱动来接收参数
2010-10-05 16:02 1753一个简单的javaBean来封装将要请求的参数可以是VO,属性 ... -
使用域模型接收参数并封装
2010-10-05 15:57 946JSP请求代码,传了参数 <%@ page langu ...
相关推荐
可以创建自定义的拦截器来检查Session中是否有已登录的用户,或者直接在Action中进行验证。 5. **数据验证**:在Action的`login()`方法中,需要对用户输入的数据进行校验。可以使用Struts2的Validator框架,通过...
在HTML表单中,我们可以设置一些基本的验证规则,例如: ```html <form class="cmxform" id="commentForm" method="get" action=""> Name ``` 这里,`class="required"`表示字段`name`是必填的,`minlength=...
首先,让我们理解表单验证的基本概念。在Web应用中,当用户填写并提交表单时,服务器端需要对这些数据进行检查,确保它们符合业务逻辑要求。Struts2提供了两种主要的验证方式:基于注解的验证和基于XML的验证。本...
在Struts2框架中,自定义Action是实现业务逻辑的核心组件。...不过,这个基本的示例足以帮助你理解Struts2中自定义Action的创建和简单登录功能的实现。通过这个起点,你可以逐步扩展和完善你的应用程序。
**一、Struts验证器Validator的基本概念** Struts Validator是Struts框架提供的表单验证工具,它通过XML配置文件定义验证规则,可以对用户提交的数据进行有效性检查,确保输入符合业务逻辑的要求。Validator不仅...
以上是实现SSH登录验证的基本流程。在实际开发中,还需要考虑更多的细节,如异常处理、日志记录、国际化、以及与数据库或第三方服务的集成。学习和实践这些步骤将有助于提升你在Web安全和Struts2框架方面的技能。
在实际开发过程中,特别是在action或facade层,我们需要实现统一的参数验证机制。这些场景通常涉及用户的输入,如表单提交的数据等,为了确保数据的有效性和安全性,需要进行严格的验证。例如,在用户注册或登录时,...
以上就是使用MyEclipse和Struts2实现登录验证的基本步骤。通过这个过程,你可以学习到Struts2的Action配置、JSP页面设计以及Action类中的业务逻辑处理。在实际项目中,可能还需要考虑更多细节,如异常处理、安全措施...
首先,我们需要理解滑动验证的基本原理。它通常由两部分组成:静态背景图和可移动的滑块。用户需要通过触摸滑块并将其拖动到正确的位置来完成验证。在这个过程中,我们需要检测滑块的移动轨迹,并与预设的正确路径...
例如,对于基本数据类型如字符串、数字等,Struts2 提供了如 RequiredStringValidator、IntegerRangeValidator 等验证器。这些验证器可以在配置文件中进行配置,非常方便。 然而,在某些复杂的业务场景下,可能需要...
然后,我们使用条件语句来验证输入值是否满足电子邮件地址的基本语法。如果输入值满足电子邮件地址的基本语法,我们返回 `true`,否则返回 `false` 和警告提示。 五、完整示例代码 在以下示例代码中,我们将上述...
尽管给定的代码实现了基本的密码验证功能,但在实际应用中,我们还可以进行以下改进和优化: - **增强密码复杂度验证**:除了验证密码一致性,还应检查密码是否满足一定的复杂度要求,例如包含大小写字母、数字和...
在本SSH框架网上商城项目的第二阶段,我们将关注的重点放在了基本的数据操作,即增删查改(CRUD),以及业务逻辑层(Service)和控制层(Action)的抽象与抽取。这一过程对于任何基于SSH(Struts2、Hibernate、...
这是最基本的验证步骤,确保用户在提交表单前已填写所有必需字段。在提供的代码片段中,JavaScript通过jQuery库进行非空验证。当用户离开(blur)特定字段时,例如用户名、密码和验证码,对应的验证函数会被触发。...
Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发,尤其在企业...通过对这些知识点的理解和实践,开发者能够掌握使用Struts2构建登录验证模块的基本步骤,并可将其扩展到更复杂的业务场景中。
通过自定义`validate`验证,开发者不仅可以验证基本的数据类型,还可以进行复杂的业务规则验证,如检查唯一性、执行数据库查询等。这种机制增强了Struts1的灵活性,使得开发者可以根据项目需求构建更加健壮的表单...
在了解jQuery表单验证之前,我们先回顾一下jQuery的基本概念。jQuery通过简洁的语法,如`$(selector).action()`,使得JavaScript代码更加易读易写。其中,`selector`是用于选择元素的CSS选择器,`action`则是对这些...
JSF框架提供了一种隐式的验证机制,可以自动执行一些基本的验证任务,如类型转换和检查必填项。例如,`<h:inputText>` 组件有一个 `required` 属性,可以用来指定某个字段是否为必填项。 ##### 示例代码: ```xml ...