- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * 10.3 struts概述与举例 Struts2框架处理流程 1.用户请求 2.核心控制器FilterDispatcher根据请求决定调用的Action 3.struts2拦截器链自动对请求应用通用功能 4.回调Action的execute方法 5.execute方法返回处理结果 10.3 struts概述与举例 struts2和struts1的对比 1、Action类 struts1要继承一个抽象基类,属于抽象类编程而不是接口;struts2中Action实现接口是不必需的,只要一个包含execute的POJO类就要以作struts2的Action 2、线程模式 struts1的Action是单例模式并且必须是线程安全的,它用一个Action实例处理所有的请求;Struts2为每一个请求产生一个实例,没有线程安全的问题 3、Servlet依赖 struts1的Action严重依赖Servlet Api,使得测试要依赖web容器 4、封装请求参数 struts1使用ActionForm对象封装用户请求参数,虽然支持使用动态的ActionForm来简化ActionForm开发,但依然要在配置文件中定义ActionForm;struts2可以直接使用Action的属性来封装用户请求参数,也可以使用Model对象来封装请求参数,Model却只是一个POJO 5、执行控制 struts1一个模块对应一个请求,Action的资源必须是线程安全的,模块中的Action共享相同的生命周期;struts2支持通过拦截器堆栈为每一个Action创建不同的生命周期(Action不是单例的) 6、表达式语言 struts1整合了JSTL,可以使用JSTL表达式语言。struts2可以使用JSTL,还整合了一种更强大和灵活的语言:OGNL(object graph notation languae) 10.3 struts概述与举例 Struts2框架开发应用的过程 第一步:创建Web工程 第二步:引入Struts的类库,核心的类库有ognl.jar、freemarker.jar、struts2-core.jar、webwork.jar,common-logging,这些类库最终都应该在web-inf/lib下面。 第三步:在web.xml中声明中心控制器。 ?????? filter ????????????? filter-namestruts2/filter-name ????????????? filter-classorg.apache.struts2.dispatcher.FilterDispatcher/filter-class ?????? /filter ? ?????? filter-mapping ????????????? filter-namestruts2/filter-name ????????????? url-pattern/*/url-pattern ?????? /filter-mapping 通过这样的配置,所有的请求都会发送给中心控制器。 第四步:在工程中创建struts2的配置文件struts.xml。配置我们编写的每个Action,还 有请求与Action对应关系,执行结果(字符串)与响应界面的对应关系。一般从其他地方拷贝,不要自己写。 第五步:编写Action,配置Action。在开发过程中主要是这一步。 10.3 struts概述与举例 Struts2编写Action Action类可以是普通的类,可以是实现Action接口的类,可以是继承ActionSupport的类。Action接口是execute方法和几个常量,通常不使用。ActionSupport实现了Action接口,并且封装了对国际化和验证的支持,如果项目需要使用验证和国际化等功能,可以继承该类。 Action类中的方法(控制方法),方法的返回值是字符串,是逻辑名字,表示某个输出界面。方法没有参数。对应每个请求都应该有这样一个方法。 为了获取输入信息,需要定义与输入元素名字相同的成员变量,并提供set方法。为了输出,需要编写成员变量来表示这些输出信息(在控制方法中对成员变量赋值),并提供get方法供框架调用。 10.3 struts概述与举例 Struts2配置Action 在struts.xml中配置。主要包括两部分:请求与具体的Action的方法的对应关系;Action中的控制方法返回的字符串与具体的响应界面的对应关系。 请求与Action方法的对应关系: action name=login class=action.UserAction me
您可能关注的文档
- 北京师范大学文学院唐宋文学课件 王孟.ppt
- 北京师范大学文学院唐宋文学课件 辛弃疾.ppt
- 北京师范大学文学院唐宋文学课件 晏几道.ppt
- 北京师范大学文学院元明清文学课件 《红楼梦》讲析.ppt
- 北京师范大学文学院元明清文学课件 《牡 丹亭》讲析.ppt
- 北京师范大学文学院元明清文学课件 《三国演义》讲析.ppt
- 北京师范大学文学院元明清文学课件 《水浒传》讲析.ppt
- 北京师范大学文学院元明清文学课件 《桃花扇》讲析.ppt
- 北京师范大学文学院元明清文学课件 《西 厢记》讲析.ppt
- 北京师范大学文学院元明清文学课件 《西游记》讲析.ppt
- 2025年初级银行从业资格之初级个人理财考试题库及答案【夺冠】.docx
- 2025年初级银行从业资格之初级个人理财考试题库及参考答案(预热题).docx
- 深圳大学高数课件—统计学指数深证成指.ppt
- 2025年初级银行从业资格之初级个人理财考试题库及完整答案(夺冠).docx
- 2025年初级银行从业资格之初级个人理财考试题库【真题汇编】.docx
- 2025年初级银行从业资格之初级个人理财考试题库及答案(名师系列).docx
- 2025年初级银行从业资格之初级个人理财考试题库【达标题】.docx
- 湘雅儿科课件Measl.ppt
- 2025年初级银行从业资格之初级个人理财考试题库【名校卷】.docx
- 2025年初级经济师之初级经济师基础知识考试题库(综合题).docx
最近下载
- 高二历史选修1重要课知识点.doc
- 九年级物理电学培优习题.doc VIP
- 2023-2024学年广东省深圳中学高二上生物期末质量检测试题含解析.doc VIP
- 交管12123学法减分复习题库500道(满分必刷).docx
- 2023-2024学年粤教版科学五年级上册教学计划(含教学进度表).pdf
- 初中数学计算能力提高的方法教学研究课题报告.docx
- AQ 1028-2006煤矿井工开采通风技术条件.pdf
- 小红书美妆产品社交电商分析.docx VIP
- 氯乙烯化工企业安全生产操作规程.pdf VIP
- 最新国家开放大学电大本科《数学分析专题研究》期末试题标准题库及答案(试卷号:1087).pdf
文档评论(0)