- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Struts授课指导
第一次课:
案例:登陆案例(按照MVC模式进行设计,如何完成?)
下载Struts1.x官方文档()。最终版本Struts1.3.10。
控制器不是某一个类,而是一类组件。
辅助javabean。
使用request得值,还有页面转向 等 代码重复性高,所以找一个框架来完成这些工作。
为什么使用Struts
Struts是apache组织的一个开源项目,主要是采用Servlet和JSP技术来实现的。采用MVC模式。
先讲述一下Struts整体的流程。如下图:
手动配置Struts实践步骤:
搭建环境
建立ActionForm
建立Action
页面访问
1)、搭建环境:
导入jar包,使用其中相关的类。
建立一个配置文件:struts-config.xml
作用:方便Struts用户使用
位置:一般放在WEB-INF文件夹下
web.xml 注册struts中心控制器----ActionServlet
注意事项:
Struts配置文件的位置
预先加载控制器
2)、开发Form
建立一个类,继承ActionForm
注册,修改配置文件struts-config.xml
name:变量名
type:类全名
3)、开发Action
建立一个类,继承Action
覆盖execute方法:
需要强制转换
调用其它模块
跳转,根据关键字
注册,修改配置文件struts-config.xml
path:指明调用者能通过中心控制器ActionServlet找到该Action
type:指明该Action类的全名
name:该Action引用的form的名称。
10、流程分析图:
问题:
1)、谁来填充Form?什么时候填充?根据什么来填充?
2)、ActionServlet怎么样把请求派发给Action?
3)、Action运行完后怎样跳转?
第二次课:
Struts工作原理,如下图:
第一步:读取配置(初始化ModuleConfig对象)
Struts框架总控制器(ActionServlet)是一个Servlet,在web.xml中配置成自动启动的Servlet。读取配置文件(struts-config.xml)的配置信息,为不同的Struts模块初始化相应的ModuleConfig对象。
ActionConfig
FormBeanConfig
ForwardConfig
MessageResourcesConfig
第二步:发送请求
用户提交表单或调用URL向Web应用程序提交一个请求,请求的数据用HTTP协议上传给Web服务器。
问题:为什么不说传送到Struts中心控制器?
第三步:填充Form(实例化、复位、填充数据、校验、保存)
(*.do请求) 从ActionConfig中找出对应该请求的Action子类,如没有对应的Action,控制器直接转发给JSP或静态页面。如有对应的Action且这个Action有一个相对应的ActionForm,ActionForm被实例化并用HTTP请求的数据填充其属性,并且保存在ServletContext中(request或者session中),这样他们就可以被其它Action对象或JSP调用。
问题:谁来填充Form?什么时候填充?根据什么来填充?
第四步:派发请求
控制器根据配置信息ActionConfig将请求派发到具体的Action,相应的FormBean一并传给这个Action的execute()方法。此时还在控制层。
问题:根据哪个标签找个具体的Action?
第五步:处理业务
Action一般只包含一个execute方法,它负责执行相应的业务逻辑(调用其它业务模块)。完毕返回一个ActionForward对象,控制器通过该ActionForward对象来进行转发工作。
第六步:返回响应
Action根据业务处理的不同结果返回一个目标响应对象给总控制器,该目标响应对象对应一个具体的JSP页面或者另一个Action。
注意:这次返回的不是具体的路径,而是一个Forward keyword。
第七步:查找响应(翻译响应)
总控制器根据业务功能Action返回的目标响应对象,找到对应的资源对象,通常是一个具体的JSP页面(也可以是一个Action)。
第八步:响应用户
目标响应对象将结果展现给用户目标响应对象(JSP)将结果页面展现给用户。
问题:你觉得谁的功劳最大?
对比一下Struts和Servlet,区别是什么?
在给大家回顾一下Struts的流程。
注意:配置文件中的path前面需要加上“/”。
提交请求的时候需要注意“.do”。
案例:增加对学生表进行增删改查的操作。
第三次课:
Struts常用的组件:Action
您可能关注的文档
- 浅谈辛亥革命的影响.doc
- Illustrator设计CD盘面.doc
- 中石油信息披露制度.doc
- 企业生命线-TQM全员品质管理.doc
- MIS教案(第1讲200809).doc
- 九年级物理运动和力典例分析.ppt
- 灌篮高手与NBA篮球.doc
- 6年级第12册语文综合复习第7课《智慧之花》.doc
- 一般课程设计模板.doc
- Samba服务器在Solaris下的高级应用.doc
- 温室气体排放核算与报告标准 生活垃圾焚烧企业.pdf
- 辽宁省铜及铜合金管材产品质量监督抽查实施细则 (2).pdf
- 辽宁省童鞋产品质量监督抽查实施细则.pdf
- 2023年北京市电热食品加工设备产品质量监督抽查实施细则.pdf
- 辽宁省电热毯产品质量监督抽查实施细则.pdf
- 增材制造 定制式氧化锆陶瓷桥架 临床操作规程.pdf
- 陕西省餐饮服务连锁企业总部食品经营许可现场核查标准解读指南.pdf
- DB31-642-2020 金属热处理加工工序单位产品能源消耗限额.pdf
- 辽宁省学生絮棉制品、床上用品产品质量监督抽查实施细则.pdf
- GBT20442-2006 地理标志产品 宝清红小豆(含第1号修改单).pdf
原创力文档


文档评论(0)