- 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
文档评论(0)