- 浏览: 1501000 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (798)
- struts2 (42)
- servlet (20)
- quartz (4)
- jquery & ajax (24)
- tomcat (5)
- javascript (15)
- struts1 (8)
- 搜索关键字及链接 (3)
- fckeditor (3)
- Apache (5)
- spring (22)
- linux (3)
- 企业应用 (8)
- 综合应用 (13)
- 服务器 (2)
- 数据库 (85)
- 性能调优 (21)
- 网络应用 (15)
- 缓存技术 (8)
- 设计模式 (39)
- 面试题 (7)
- 程序人生&前辈程序员 (29)
- java基础 (59)
- hibernate (75)
- log4j (4)
- http (11)
- 架构设计 (28)
- 网页设计 (12)
- java邮件 (4)
- 相关工具 (11)
- ognl (7)
- 工作笔记 (18)
- 知识面扩展 (12)
- oracle异常 (1)
- 正则表达式 (2)
- java异常 (5)
- 项目实践&管理 (1)
- 专业术语 (11)
- 网站参考 (1)
- 论坛话题 (2)
- web应用 (11)
- cxf&webservice (22)
- freemarker (3)
- 开源项目 (9)
- eos (1)
- ibatis (6)
- 自定义标签 (3)
- jsp (3)
- 内部非公开文档(注意:保存为草稿) (0)
- 国内外知名企业 (2)
- 网店 (3)
- 分页 (1)
- 消费者习惯 (2)
- 每日关注 (1)
- 商业信息 (18)
- 关注商业网站 (1)
- 生活常识 (3)
- 新闻 (2)
- xml&JSON (5)
- solaris (1)
- apache.common (3)
- BLOB/CLOB (1)
- lucene (2)
- JMS (14)
- 社会进程 (8)
- SSH扩展 (2)
- 消费心理 (1)
- 珠三角 (1)
- 设计文档 (1)
- XWork&webwork (1)
- 软件工程 (3)
- 数据库及链接 (1)
- RMI (2)
- 国内外知名企业&人物 (1)
最新评论
-
司c马:
简介易懂、
OutputStream和InputStream的区别 -
在世界的中心呼喚愛:
解决我的问题
Java获取客户端的真实IP地址 -
bo_hai:
都是些基本的概念呀!
SSO -
tian_4238:
哥们,你也是搞水利这块的吧。
巧用SQLQuery中的addScalar -
loveEVERYday:
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp小结
通过我在blog中写到关于利用Struts 2完成手动校验这篇文章。现在,我对Struts 2校验流程做一个分析,Struts 2校验流程分为如下几个步骤:
1、Struts 2的类型转换器负责对客户端的字符串请求参数进行类型转换。
2、在执行类型转换的过程中如果出现异常,就将异常信息保存到ActionContext中,然后利用conversionError拦截器将信息封装fieldError。
3、执行validateXxx()方法,进行数据输入校验。
4、执行validate()方法,进行ActionSupport提供的默认的数据校验方法。
5、如果第4、5步骤没有出现异常,就进入相应的视图资源。如果出现异常,则通过系统将转入input逻辑视图所指定的视图资源。
发表评论
-
Struts2对Action名称的搜索顺序
2011-08-03 22:47 1383新建一个struts2项目,命名为struts2。按照如下XM ... -
探究Struts2运行机制:StrutsPrepareAndExecuteFilter 源码剖析
2011-08-03 19:09 1772一、概述 Struts2的核心是一个Filter ... -
struts2 FilterDispatcher 和 StrutsPrepareAndExecuteFilter 的区别
2011-08-03 18:02 1346FilterDispatcher是struts2.0.x到2. ... -
框架学习之Struts2 第二节 Action的详解
2011-08-03 17:50 1375http://www.cnblogs.com/ying ... -
Struts2的模板和主题theme及自定义theme
2011-08-03 16:59 8266Struts2提供了三种主题,ajax, simple, cs ... -
struts2 action基类 ActionSupport
2011-08-03 16:14 2637Struts 2的Action无须实现 ... -
Struts2访问Web元素(RequestAware,SessionAware,ApplicationAware)
2011-08-03 14:50 9703在Struts2中,动作类虽然继承ActionSupport类 ... -
Struts2自定义拦截器实例—Session超时的处理
2011-08-03 10:49 3400版本:struts2.1.6 实例功能:当用户登陆后,ses ... -
Struts2数据传输的背后机制:ValueStack(值栈)
2011-07-11 15:34 1344今天看到一篇讲struts2的valuestack的很好文章, ... -
struts2文件上传的采用的三种方式解析
2011-07-06 18:29 1372文件上传几乎是每个项目实现的一个必须的模块。 上传就是将 ... -
Struts2 <s:token/>标签
2011-03-01 09:24 16131、使用Struts2的表单标签,其中需要增加token标签。 ... -
struts2的Action配置通配符
2011-02-28 17:05 22241.注意,书写代码的时候一定要注意命名的规则,不要胡乱的命名, ... -
struts2中form的theme属性
2011-02-28 16:00 2382struts2中theme属性包括xhtml,html,sim ... -
Struts2的类型转换器
2011-02-24 17:27 1393一、概述 在B/S应用中,将字符串请求参数转换为相应的 ... -
Struts2标签--s:url
2011-02-23 17:09 1884<!--action就是struts2 acti ... -
hgdfghgdfh
2011-01-06 17:57 0datealocaltonight.com -
Struts2 默认的模板配置 theme
2010-10-29 10:26 1474在使用struts2标签时,默认情况下生成的html代码会添加 ... -
Struts2自定义Theme
2010-10-29 10:21 15951. Struts2 Theme与WebWork Theme ... -
Struts2 的四种theme类型
2010-10-29 10:13 1678struts2 中有四种 theme 类型: simple ... -
详解struts2中struts.properties
2010-10-18 11:28 1221Struts 2框架有两个核心配置文件: strut ...
相关推荐
5. **数据验证**:如果`<form-bean>`的`validate`属性设置为`true`,Struts会调用该JavaBean类中对应的`validate()`方法进行数据校验。这一步是为了确保用户提交的数据满足业务逻辑要求。 6. **Action执行**:验证...
2. **模型驱动**:使用一个公共对象作为模型,Action类持有这个模型的引用,Struts2将请求参数填充到模型对象中,这种方式更便于数据管理和共享。 此外,Struts2还支持动态方法调用、国际化、主题和模板、AJAX集成...
- **Struts2**: Struts2直接使用Action对象的属性作为输入数据,消除了对`ActionForm`对象的需求。输入数据可以是复杂的对象类型,包含子属性。此外,Struts2支持模型驱动特性,允许使用现有的业务对象作为输入/输出...
相比之下,Struts2为每个请求创建新的Action实例,消除了线程安全问题,也简化了开发流程。 在Servlet依赖上,Struts1的Action直接依赖于Servlet API,这意味着Action的execute方法接收HttpServletRequest和...
- **Struts2** 直接利用Action对象的属性作为输入属性,这极大地简化了输入处理流程。开发者可以直接使用现有的业务对象作为输入和输出对象,而无需额外创建`ActionForm`类。此外,Struts2支持更高级的表单验证功能...
- **Struts 2**:支持在Action中重写`validate`方法进行校验,也支持整合`XWork`校验框架进行校验,提供了更多的校验策略。 #### 10. Action执行控制的对比 - **Struts 1**:Action的执行顺序依赖于配置文件中的...
STRUTS工作流程图详细展示了Struts框架处理用户请求的过程,这对于理解和学习Struts至关重要。 1. **请求开始**:当用户在浏览器中输入URL并提交请求时,请求首先会被Web服务器接收到,然后由Struts的`Action...
- **访问四大作用域中的数据:** Struts2提供了内置的标签库,结合OGNL可以让开发者方便地访问应用中的各种数据。 - **ValueStack与ActionContext:** - **ValueStack存在于Action上下文中:** 每次处理请求时,...
Struts2提供了一种灵活的输入验证机制,可以在Action级别或者全局级别进行数据校验,避免无效数据进入系统。 4. **文件上传与下载**: Struts2支持文件上传和下载功能,利用`commons-fileupload-1.2.1.jar`组件,...
简析校验流程: 53 2.基于XML配置形式的校验 53 九、文件上传下载(了解) 55 1. 上传实例 55 2.下载实例 57 十、类型转换 57 1.基于Action的直接属性转换 57 2.基于Action的间接属性vo转换 59 十一、注解配置 59 ...
总结来说,Struts2拦截器及其时序图展示了拦截器在Action处理过程中的工作原理和顺序。通过拦截器链,开发者可以灵活地对Action的调用进行增强和控制,实现诸如数据校验、日志记录等功能,这些功能是构建企业级Java ...
9. 表达式OGNL:Struts2整合了对象图导航语言(Object-Graph Navigation Language, OGNL)作为其表达式语言,方便开发者在视图中访问应用中的各种数据。 10. 上传下载:Struts2提供了上传下载的处理机制,使开发者...
- **校验功能的增强**:Struts2提供了丰富的校验机制,通过配置和自定义校验规则,可以确保输入数据的有效性和安全性。 #### 四、Struts2的高级特性与实践 1. **拦截器的深度定制**:除了使用内置的拦截器,还可以...
OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于访问和操作Java对象图,常用于Struts2的视图层数据绑定。 ### Struts2的Taglib Struts2提供了一系列标签库(Taglib),包括数据标签、控制...
在处理表单提交时,Struts2的验证框架可以帮助你实现客户端和服务器端的数据校验。手册可能会介绍如何编写验证规则,以及如何在Action中处理验证失败的情况。 此外,Struts2的拦截器机制是其一大亮点,可以实现如...
此外,Struts2支持ModelDriven特性,允许使用现有的业务对象作为输入/输出对象,进一步简化了开发流程。 #### 表达式语言 - **Struts1**:Struts1集成了JSTL,使用JSTL EL(Expression Language)来处理表达式。...
Struts2的校验框架可以帮助我们实现这一点,可以在Action类中添加校验规则,或者在struts.xml配置文件中定义。 7. **结果页面**:成功上传后,用户通常会被重定向到一个结果页面,显示上传状态和可能的反馈信息。这...
- **xwork-core.jar**:该库是Struts2的基础框架XWork的核心实现,为Struts2提供了核心的业务逻辑处理机制,包括Action调用、类型转换、数据验证等功能。 #### 二、Struts2架构中的其他关键组件 除了上述两个核心...
- **4.2 Struts2框架实现数据校验**:利用Struts2内置的验证机制简化验证过程。 #### 六、国际化实现 - **5.1 页面的国际化**:如何根据不同语言和地区显示不同的内容。 - **5.2 Action的国际化**:如何使Action...