`
weishuwei
  • 浏览: 326362 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

webwork笔记之action

阅读更多
xml 代码
 
  1. public interface Action extends Serializable {   
  2.     public static final String SUCCESS = "success";  
  3.     public static final String NONE = "none";  
  4.     public static final String ERROR = "error";  
  5.     public static final String INPUT = "input";  
  6.     public static final String LOGIN = "login";  
  7.     public String execute() throws Exception;  
  8. }  
  9. =========================================================================  
  10. 2,每次Action调用都会创建一个AcionContext,我们可以ActionContext context=ActionContext.getContext()来使用它.  
  11. =========================================================================  
  12. 获取Session  
  13. 方式一:  
  14. 以下语句必须放在execute()方法里,不然会取不到值;  
  15. ActionContext ctx2 = ActionContext.getContext();//必须在execute()方法里  
  16. Map session2=ctx2.getSession();  
  17. 方式二:  
  18. action implements SessionAware{  
  19. protected Map session;  
  20. public void setSession(Map session) {  
  21.     this.session = session;  
  22. }  
  23. }  
  24. 这样就可以从该session对象中put或get对象.  
  25. 方式三:  
  26. 前两个得到是session都不是HttpSession对象.而ServletActionContext.getRequest().getSession()则是HttpSession对象.  
  27. ServletActionContext.getRequest().getParameter("username")  
  28. ServletActionContext.getRequest()就是HttpServletRequest  
  29. =========================================================================  
  30. webwork中的aware接口   
  31. aware接口要求实现类必须实现单一的setter方法,以便将资源应用到实现类中。  
  32. 1、ParametersAware 指明action需要HTTP请求参数map。  
  33. 2、ServletRequestAware 指明action需要ServletRequest对象。  
  34. 3、SessionAware 指明action需要HttpSession对象。  
  35. 4、ApplicationAware 指明action需要ServletContext对象。   
  36. =========================================================================  
  37. 可以处理多个请求的Action  
  38. "!method"的方式支持多个请求,当我们用/test.action时,则调用execute方法,我们用/test!login.action时,将调用login方法,  
  39. 即 actionName!method.action 这样的URL映射方式。此外login()方法也可以命名为 doLogin() 方法.  
  40. =========================================================================  
  41. 验证文件采用ActionClass-validation.xml的命名规则,并不支持分别针对不同的method单独定义验证文件,我们可以采用如下方式:  
  42. <action name="test" class="com.javaeye.action.TestAction"></action>  
  43. <action name="login" class="com.javaeye.action.TestAction" method="login"></action>  
  44. =========================================================================  
  45. 有时我们只是页面跳转,并不需要声明一个action,可以使用ActionSupport  
  46. <action name="index" class="com.opensymphony.xwork.ActionSupport">  
  47.     <result name="success" type="dispatcher">/index.jsp</result>  
  48. </action>  
  49. =========================================================================  
  50. 异常可以如下方式获取:  
  51. OgnlValueStack s = ActionContext.getContext().getValueStack();  
  52. Object obj = s.pop();  
  53. System.out.println(obj.getClass().getName());  
  54. obj = s.pop();  
  55. System.out.println(obj.getClass().getName());  
  56. BTW:如果是以chain的方式转向于此action,则要注意第二个元素才是ExceptionHolder   
  57. =========================================================================  
  58. 为action参数注入值;  
  59. <action name="listUser" class="com.adt.action.user.ListUser">    
  60.       <param name="page.everyPage">10</param>    
  61.       <result name="success">/user/user_list.jsp</result>    
  62. </action>  
  63. =========================================================================  
分享到:
评论

相关推荐

    WebWork2学习笔记

    本学习笔记将深入探讨WebWork2的核心概念、主要特性以及如何在实际项目中应用。 首先,WebWork2的核心是Action,它是处理用户请求的中心组件。Action类负责接收HTTP请求,执行业务逻辑,并通过Result将处理结果返回...

    webwork学习笔记(全)

    ServletDispatcher 是WebWork中的核心组件之一,它负责根据Action配置信息来分发请求,调用相应的Action方法,并将结果返回给客户端。它解析请求路径,查找匹配的Action映射,执行Action并根据返回的结果类型选择...

    webwork学习笔记

    ### WebWork学习笔记知识点 #### 一、WebWork框架简介 - **定义**: WebWork是一个由OpenSymphony组织开发的MVC(Model-View-Controller)框架,专注于组件化和代码重用,适用于J2EE应用程序开发。 - **最新版本**:...

    webwork 上传文件与下载文件 使用笔记

    文件上传是Web应用程序中的常见需求之一。在WebWork中,文件上传主要通过`FileUploadInterceptor`来实现。该拦截器处理HTTP请求中的文件上传数据,并将其封装成`java.io.File`对象或其他形式以便于进一步处理。 ###...

    webwork in action

    在学习WebWork的过程中,`笔记.pdf`可能是作者或读者整理的学习要点和心得,涵盖了书中关键概念的总结。`[www.whser.com]readme.txt`可能是一个网站的说明文档,提供了更多关于WebWork的在线资源或者示例代码。`JSP...

    Java相关课程系列笔记之十三Struts2学习笔记

    本笔记将深入探讨Struts2的核心概念、发展历程、使用方法以及与OGNL(Object-Graph Navigation Language)的结合应用。 **一、Struts2概述** 1.1 为什么要用Struts 在Java Web开发中,Struts2作为MVC框架,能够...

    webworkwebwork笔记

    从给定的文件信息来看,这里涉及到的是WebWork框架的学习笔记与配置,以及如何将WebWork与Spring、Hibernate集成在一起的示例。下面,我们将详细地解析这些知识点: ### WebWork框架简介 WebWork是一个开源的Java ...

    [黑马程序员Struts2 2016版视频] 前3Days笔记

    总结,黑马程序员Struts2 2016版的前3Days笔记重点介绍了Struts2的基础概念、架构、配置、Action、结果类型、视图渲染、标签库以及拦截器等关键知识点。通过深入学习这些内容,开发者能够更好地理解和运用Struts2...

    Struts2学习笔记

    根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...

    struts2 学习重点笔记

    - **核心**:Struts2 的核心其实是 WebWork 2,它融合了 Struts 1 的一些优秀思想。 - **优势**:使用 Struts2 可以显著提高开发效率,因为它能够处理很多基础任务,如数据接收、类型转换、验证等。 **1.2 Struts2 ...

    struts2笔记

    本笔记将深入探讨Struts2的核心概念、执行流程、类型转换、输入验证和国际化等方面。 **一、Struts2框架基础** Struts2是Apache软件基金会的一个开源项目,它是基于拦截器的MVC框架,继承了WebWork框架的优点。...

    Java相关课程系列笔记之十三Struts2学习笔记.doc

    在本篇笔记中,我们将深入探讨Struts2的核心概念和使用方法。 **一、Struts2概述** 1.1 为什么要用Struts? 在传统的JSP开发中,模型与视图、控制器的职责混杂,导致代码维护困难。Struts2作为MVC框架,将业务逻辑...

    struts2综合笔记

    - 允许使用 POJO (Plain Old Java Object) 作为 Action 类,使得 Action 更易于测试。 - 支持多种视图技术,如 JSP、FreeMarker、Velocity 等。 - 基于 Spring AOP 思想的拦截器机制,易于扩展和定制。 - 强大的...

    struts2学习笔记.doc

    - **Struts2的起源**:Struts2最初由WebWork和Struts1的核心开发者联合创建,其目的是为了弥补这两个框架的不足之处。 **1.2 开发环境配置** - **IDE选择**:Eclipse 3.2 + MyEclipse 5.5。 - **Servlet Container*...

    struts2的学习笔记+测试源代码

    总结,Struts2的学习笔记结合测试源代码,可以帮助开发者掌握Struts2的核心概念,包括Action、拦截器、值栈和MVC设计模式的应用,以及配置、测试和安全方面的知识。通过实际编码和调试,可以加深对Struts2的理解,...

    Struts1及14. Struts2学习笔记

    Struts2是Struts1的升级版,它吸取了其他优秀框架的优点,如Spring、WebWork等,提供更强大的功能和更灵活的配置。Struts2的核心是FilterDispatcher,它处理所有请求并根据配置的拦截器链进行处理。Struts2支持OGNL...

    struts2学习笔记

    以下是对Struts2学习笔记的详细解析: 一、认识Struts2 Struts2是Apache软件基金会的开源项目,它是Struts1的后续版本,吸取了其他优秀框架如WebWork的优点。Struts2的核心是Action类,它负责处理HTTP请求,并与...

Global site tag (gtag.js) - Google Analytics