- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Struts2温习
MVC设计模式是指
Model 我们编写的javabean,包括dao,DBManager
View jsp页面
Controller 在Struts2中指的是Action控制器
注意:struts2是不是在struts1基础之上发展起来,而是在webwork框架上发展而来。
MVC的优势
可为一个模型建立多种不同视图,随意切换
视图和控制器的可接插性
模型的可移植性
Struts2和Struts1相比优势
测试更方便,控制器没有和系统的类有太多耦合
Struts2的Action是一个完全的POJO类。无任何依赖关系
注意:一般我们为了规范Action的开发,会让Action去实现一个接口:Action接口,或者继承一个方法。ActionSupport类
Struts2的体系结构
核心控制器:StrutsPrepareAndExecuteFilter 接收请求并分发到相应action中
业务控制器:就是我们自己编写的Action类
Struts2的配置文件
Struts.xml
Struts.properties
注意复习配置文件中的每一项分别表示什么
如:
constant name=struts.ui.theme value=simple / 配置系统属性常量(简单主题显示)
//注意:包必须继承自struts-default 包,否则报错
package name=default extends=struts-default namespace=/
action name=xxx class=com.scme.action.XXXX 这里是Action的配置
result name=名字/xx.jsp/result 这里是定义视图转向的配置
/action
/package
Sturts2运行流程:
客户端发送请求
核心控制器StrutsPrepareAndExecuteFilter 接收请求,并找到相应的Action处理
Action默认执行execute()方法,如果设置了则执行相应的方法,处理完毕,转发到相应的视图(根据配置中的result进行)
Struts2的核心控制器是一个过滤器,需要在web.xml中进行配置。
Action配置的时候属性
注意:Struts2的Action是会为每个请求创建一个Action
Struts1的Action是单例的
name是 Action的名称,用于页面提交时使用
Class是Action的路径
Result配置时的属性
name 该视图的名称
type 用于指定result的结果类型,默认为转发,可设置为重定向
注意:当然可以配置全局的result属性,一般我们是配置在action内部,供当前这个action使用
Struts2在Action中无法直接使用内置对象(request session等)
如何获取呢?
获取值
//获得request中所有值
Map requestMap = (Map)ActionContext.getContext().get(request);
//获得session中所有值(是一个Map)
Map sessionMap = (Map)ActionContext.getSession();
获取对象
通过ServletActionContext.getRequest()获得request对象
ServletActionContext.getResponse()获得response对象
ServletActionContext.getRequest().getSession()获得session对象
Struts2在Action中通过属性或者对象来封装页面用于提交的数据
属性时称为 属性驱动
对象时称为 模型驱动(模型驱动时页面上必须使用 对象名称.属性名)
Struts2中的常量可以在Struts.xml中设置,也可以单独建立文件struts.properties文件
struts.ui.theme 设置struts显示主题风格
struts.action.extension 设置拦截的后缀
在开发中经常会遇到很多配置,这样struts.xml中配置将非常多,很难维护,这样提供了包含配置:可分别建立struts1.xml struts2.xml 然后我们在struts.xml中包含其他即可:
struts
include file=struts1.xml /
include file=struts1.xm2 /
/struts
Struts2中,如果提交表单或超链接时只写了action的名称,则默认执行execute方法,如果写了则
文档评论(0)