第2章 Struts核心基础.pptVIP

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 Struts 2 核心基础 2010-3-8 复习 (1)Struts 2框架接受到客户端请求,将请求交由FilterDispatcher进行处理; (2)FilterDispatcher将对*.action请求进行解析得到Action名称,从struts.xml中获得该Action的配置信息并调用此Action。 (3)系统获得Action的配置信息后,会记录该Action的所配置的拦截器信息,并在此Action执行前后调用这些拦截器。 (4) Action执行后返回一个结果类型,此结果映射到物理视图界面。 Struts2框架 内容提要 1.1 Action应用详解 ActionSupport类的使用 虽然使用现在的Action可以进行一系列的工作,但是想要更快更方便地进行开发,可以使Action类继承com.opensymphony.xwork2.ActionSupport类。 ActionSupport类是辅助Action类能够更好地完成工作的基类,它实现了几个接口并包含了一组默认的实现。 在实际开发中通常要让Action类继承ActionSupport类,该类可以使Action方便地进行数据验证、国际化等工作,只需在Action中完成这些功能的具体实现就可以了。 ActionSupport类所实现的接口主要有: Action, LocaleProvider, TextProvider, Validateable, ValidationAware Action接口的使用 Action接口的使用 Action接口定义了5个标准字符串常量:SUCCESS、NONE、ERROR、INPUT 、 LOGIN;1个execute()方法。 这5个常量就是在日常开发中业务逻辑方法中返回的字符串,可以简化和标准化execute方法的返回值。 execute()方法则是Action接口定义的一个默认的业务逻辑方法,在我们自定义的Action类中只需要重写该方法即可,Struts2会默认地调用execute方法。 Action的传值方式 在Struts2中Action与外界交互,实现数值传递:字段驱动(Field-driven,有的地方也称为属性驱动)方式传值和模型驱动(Model-driven)方式传值。 不管属性驱动还是模型驱动,Struts2框架都是通过拦截器负责提取请求参数,并将请求数据封装到相应的Action实例的属性或专门的模型的属性。 Action的传值方式 1. 字段驱动(属性驱动)方式 直接在Action里定义各种Java基本类型的字段(属性),使这些字段与表单数据相对应,并利用这些字段进行数据传递。前面我们做的示例都属于字段驱动模式。 2.?模型驱动方式 模型驱动就是使用单独的JavaBean模型进行数据传递。JavaBean所封装的属性与表单数据的属性一一对应,JavaBean成为数据传递的载体。 Action类通过get*()方法来获取模型,*为具体的模型对象。 Action的传值方式 示例:修改用户登录验证。 (见例02) (1)新增一用户域模型对象:User.java (2)Action类定义一个User类型的域模型,使用getUser()方法获取模型对象。 (3)对于JSP页面,如果是负责取值的,则格式必须为“模型对象名.属性名”;如果是负责传值的,则格式为“模型对象名.属性名”或直接是“属性名”。 在Action中访问Servlet API Struts2中的Action并没有和任何Servlet API耦合,这样框架更具灵活性,更易测试。 但是,有时候我们必须访问Servlet API,例如要使用request对象,或者跟踪HTTP Session用户状态等。Struts2框架提供了两种方式来访问Servlet API。 Struts2中提供了一个ActionContext类(当前Action的上下文对象),通过这个类可以访问Servlet API。 在Action中访问Servlet API 1. 通过ActionContext类访问Servlet API Struts2中提供了一个ActionContext类(当前Action的上下文对象),通过这个类可以访问Servlet API。 见例02 2. 通过实现*Aware接口获得Servlet API 见例02 在Action中定义多个方法 通常情况下,业务逻辑代码放在Action的execute方法中进行处理,但对需要实现多个功能的Action这样做就不太适合了,通常我们可以根据具体需求,在Action中定义多个方法。 在Action中自定义方法实现某些功能时,方法的命名没有严格的规定,但方法返回类型必须为

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档