上次的文章中介绍了ModelAndView对象中的view对象,可以使用字符串来让Spring框架进行解析获得适合的视图。而解析View的就是ViewResolver技术。
ViewResolver的定义如下:
public interface ViewResolver {
View resolveViewName(String viewName, Locale locale) throws Exception;
}
在[spring-dispatcher-name]-servlet.xml中,可以定义viewResolver:
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/jsp/"/>
<property
name="suffix" value=".jsp"/>
</bean>
来让DispacherServlet进行加载默认的viewResolver,如果没有设置viewResolver,spring使用InternalResourceViewResolver进行解析。
Spring实现ViewResolver的非抽象类且我们经常使用的viewResolver有以下四种:
InternalResourceViewResolver |
将逻辑视图名字解析为一个路径 |
BeanNameViewResolver |
将逻辑视图名字解析为bean的Name属性,从而根据name属性,找定义View的bean |
ResourceBundleResolver |
和BeanNameViewResolver一样,只不过定义的view-bean都在一个properties文件中,用这个类进行加载这个properties文件 |
XmlViewResolver |
和ResourceBundleResolver一样,只不过定义的view-bean在一个xml文件中,用这个类来加载xml文件 |
使用多视图解析器:
我们不想只使用一种视图解析器的话,可以在[spring-dispatcher-name]-servlet.xml定义多个viewResolver:
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean id=”beanNameViewResolver” class=”...BeanNameViewResolver”>
<property name="order" value="1"></property>
</bean>
<bean id=”beanNameViewResolver” class=”...XmlViewResolver”>
<property name="order" value="0"></property>
</bean>
DispatcherServlet会加载所有的viewResolver到一个list中,并按照优先级进行解析。注意order中的值越小,优先级越高。而id为viewResolver
的viewResolver的优先级是最低的。
分享到:
相关推荐
### Spring3 MVC 学习笔记入门知识点解析 #### 一、Spring MVC 概念与架构 **Spring MVC** 是 Spring Framework 的一个重要模块,主要用于构建基于 Web 的应用。它实现了 Model-View-Controller(MVC)设计模式,...
这个压缩包“Spring MVC学习笔记MD.7z”包含了作者在学习Spring MVC过程中的笔记、源代码以及相关文档,非常适合初学者或希望深入理解Spring MVC的开发者。 首先,`SpringMVC-Study.7z` 可能是作者整理的Spring MVC...
### Spring MVC 学习笔记 #### 一、Spring MVC 核心组件与工作流程 **Spring MVC** 是 **Spring Framework** 的一个重要模块,主要用于构建基于 Web 的应用程序。它提供了简化 Web 开发的一系列功能,包括但不限于...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。在Spring MVC中,开发者可以利用模型-视图-控制器(MVC)架构模式来分离业务逻辑、数据处理和...
本总结笔记是Spring、Mybatis、SpringMVC的综合学习资源,涵盖了这些框架的基本概念、配置方式、优点与适用场景,以及它们各自组件和功能点的详细解释。适用于初学者入门学习,同时也可以作为面试时的参考资料,帮助...
本学习笔记主要围绕Spring MVC的使用、配置和核心组件进行深入探讨,旨在帮助开发者更好地理解和掌握这一框架。 在Spring MVC中,Model代表业务逻辑和数据,View负责数据的展示,而Controller处理用户请求,协调...
**Spring MVC 学习笔记** Spring MVC 是 Spring 框架的一个模块,专门用于构建 Web 应用程序。它提供了一种模型-视图-控制器(Model-View-Controller)架构,帮助开发者处理请求、控制应用程序流程,并实现业务逻辑...
Spring MVC 是 Spring 框架的重要组成部分,它是一个用于构建 Web 应用程序的模型-视图-控制器(MVC)框架。Spring MVC 通过解耦应用程序的不同部分,使开发人员能够更轻松地进行测试和维护。在本学习笔记中,我们将...
**MVC 模式简介** MVC(Model-View-Controller)模式是一种广泛应用于Web应用程序设计的架构模式,它将应用程序分为三个主要组件...通过阅读"MVC-step-by-step"笔记,我们可以系统地学习和掌握Spring MVC的各个方面。
Spring 框架是 Java 开发中的核心框架之一,它为构建企业级应用程序提供了一个全面的编程和配置模型。Spring 的设计理念是“依赖注入”(Dependency Injection,简称 DI)和面向切面编程(Aspect-Oriented ...
接下来是`config.xml`文件的配置,它是Spring MVC框架的配置文件之一,用于定义视图解析器、控制器映射等组件。 - **视图解析器**: ```xml <!--Definition of ViewResolver--> <bean id="viewResolver" class=...
Spring MVC 是 Spring 框架的一部分,它是一个用于构建 Web 应用程序的轻量级、模型-视图-控制器(MVC)框架。Spring MVC 提供了处理 HTTP 请求和响应的机制,以及解耦业务逻辑和用户界面的能力。它通过分离关注点,...
Spring MVC 是 Spring 框架的一部分,它是一个轻量级的、模型-视图-控制器(MVC)架构,用于构建 Web 应用程序。Spring MVC 提供了处理HTTP请求、数据绑定、验证、国际化等功能,极大地简化了Web开发流程。 1. **...
Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一部分,专为构建可扩展、高性能的 Web 应用程序而设计。这个资源包含的"spring学习文档及源码笔记"是深入理解并掌握 Spring MVC 的宝贵资料...
Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的重要组成部分,主要用于构建 MVC(Model-View-Controller)架构的 web 应用程序。本配套资料包含 SpringMvc 学习笔记与代码示例,是学习 ...
而Spring MVC是Spring框架的一部分,专注于Web应用的开发,提供了模型-视图-控制器架构,使得前后端分离更加清晰。MyBatis则是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射,避免了几乎所有的JDBC...
这份"Spring5框架课堂笔记10307327.rar"的压缩包文件包含了关于Spring5框架的深入学习资料,特别是以PDF形式的讲义,将帮助我们全面理解这个框架的核心概念和实际应用。 首先,Spring5框架的基础部分包括IoC容器和...