javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计

上传人:E**** 文档编号:100327148 上传时间:2019-09-23 格式:PPT 页数:18 大小:1.14MB
返回 下载 相关 举报
javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计_第1页
第1页 / 共18页
javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计_第2页
第2页 / 共18页
javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计_第3页
第3页 / 共18页
javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计_第4页
第4页 / 共18页
javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计》由会员分享,可在线阅读,更多相关《javaee企业级项目开发蒋卫祥)电子资源javaee-单元8 任务2 会议审批设计(18页珍藏版)》请在金锄头文库上搜索。

1、Struts2+Hibernate+Spring,JavaEE 企业级项目开发,单元八 会议管理,任务2 会议审批设计,目录页,第1页,任务2 会议审批设计,过渡页,第2页,过渡页,任务简介,任务2 会议审批设计,任务简介,本任务的目标是学习Spring MVC核心模块,本任务 理解Controller 理解ModelAndView 理解ViewResolver 应用MultiActionController控制类开发会议审批子模块,第3页,过渡页,第4页,过渡页,任务分析,任务2 会议审批设计,任务分析,分析Spring MVC的Controller结构,详细分析每一种Controller类

2、的主要功能; ModelAndView类是模型与视图结合在一起的对象,由于Java方法一次只能返回一个对象,所以ModelAndView是封装了这两个对象,同时传回了Model与View; ViewResolver来根据Controller中返回的View名关联到具体的View对象,使用View对象来渲染返回值以生成最终的视图。,第5页,过渡页,第6页,过渡页,相关支撑知识,相关支撑知识,MVC模型中的控制器负责解析用户的输入信息,并将之变换处理后传入一个Model,而这个 Model则可能被呈现给发起请求的用户。Spring MVC包含了3类Controller:处理HTML表单的Contr

3、oller,基于Command的Controller,和向导风格的 Controller。 Spring MVC中Controller的基本类是Controller,这是一个相当简洁的接口,源代码如下:,第7页,一Controll er 类,任务2 会议审批设计,public interface Controller ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception; ,相关支撑知识,AbstractController是WebContent

4、Generator的子类,并实现了Controller接口。AbstractController是最重要的Controller接口实现之一 ,它提供了一些很基本的功能特征,例如生成HTTP协议的缓存头标数据,设定GET/POST动作等等。 AbstractorController的工作流程如下: DispatcherServlet调用handleRequest方法; 检查被支持的方法(GET/POST/PUT之一),若不支持则抛出ServletException; 若需要发起一个session,则尝试获取一个session,若获取不到,则抛出ServletException; 根据cacheS

5、econds属性,设定缓存头标的数据; 调用受保护的抽象方法handleRequestInternal,这个方法应由AbstractController的子类提供实际的功能实现,并返回ModelAndView对象。,第8页,一Controll er 类,任务2 会议审批设计,相关支撑知识,Spring提供了一个多动作控制器MultiActionController,开发人员可以将多个动作聚合在同一个控制器之内,实现功能集成,从而不必为控制器定义多个入口点。例如对商品信息进行查询、增删改等操作,这个动作可以用一个Contoller来实现。,第9页,一Controll er 类,任务2 会议审批设

6、计,相关支撑知识,BaseCommandController用于将表单的参数封装到一个Command对象加以处理,Command是一个JavaBean, 子类AbstractCommandController定义了后续的流程,通常使用继承AbstractCommandController来定义CommandController,下面是使用AbstractCommandController示例,代码如下:,第10页,一Controll er 类,任务2 会议审批设计,public class UserInfoController extends AbstractCommandController

7、 protected ModelAndView handle(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception UserInfo user = (UserInfo) command; System.out.println(user); return null; ,相关支撑知识,ModelAndView封装了Model与View两个对象,可以同时传回两个Model与View。ModelAndView的构造方法主要包括: 最

8、简单的ModelAndView是View的名称返回,之后View名称被View resolver: ModelAndView(String viewName) 如果要返回Model对象,则可以使用Map来收集这些Model对象,然后设定给ModelAndView,使用下面这个版本的ModelAndView: ModelAndView(String viewName, Map model) Map对象中设定好key与value值,之后可以在视图中取出。 如果只是要返回一个Model对象,则可以使用下面这个ModelAndView版本: ModelAndView(String viewName,

9、String modelName, Object modelObject) 视图页面中可以根据modelName取出Model并显示。,第11页,任务2 会议审批设计,二ModelAndView,相关支撑知识,ModelAndView类可使用View接口的对象来作View的参数。 ModelAndView(View view) ModelAndView(View view, Map model) ModelAndView(View view, String modelName, Object modelObject) ModelAndView() ModelAndView实例设置model有三

10、个方法: addObject(Object modelObject) addObject(String modelName, Object modelObject) addAllObjects(Map modelMap),第12页,任务2 会议审批设计,二ModelAndView,相关支撑知识,第13页,任务2 会议审批设计,三 ViewRes Ol ver,DispatcherServlet会根据传回的ModelAndView来解析View名称,并处理给予的Model。View名称的解析是委托给实现ViewResolver接口的实例,ViewResolver接口定义如下: public in

11、terface ViewResolver public view resolveViewName(String, Locale locale)throws ServletException; ViewResolver的一个实例是InternalResourceViewResolver,可以在viewResolver中设置“prefix”与“suffix”属性,分别设置路径的前置与后置文字,这样viewPage属性就可以只打路径的主要名称。ViewResolver在名称解析完之后,实际的View绘制与Model对象的转换处理是交给实现org.springframework.web.servlet

12、.View的实例,View接口如下: public interface View public void render(Map model, HttpServletResquest resquest, HttpServletResponse response)throws ServletException, IOException; ,相关支撑知识,第14页,任务2 会议审批设计,四 Multi ActionControll er,Spring提供一个多动作控制器,使用它可以将几个动作合并在一个控制器里,这样可以把功能组合在一起。多动作控制器存在在一个单独的包中:org.springframework.web.mvc.multiaction,它能够将请求映射到方法名,然后调用正确的方法。 MethodNameResolver 根据收到的请求解析方法名,有三种解析器可以供选择: ParameterMethodNameResolver InternalPathMethodNameResolver PropertiesMethodNameResolver,过渡页,第15页,过渡页,任务小结,任务小结,能力目标,第16页,任务2 会议审批设计,谢谢观看,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号