XmlViewResolver类简介说明

XmlViewResolver是Spring MVC中用于解析XML配置文件的视图解析器,它实现了ViewResolver接口并支持视图缓存。配置时,需指定XML配置文件的位置,如/WEB-INF/views.xml。视图配置文件中定义了逻辑视图名和实际视图间的映射。例如,配置一个InternalResourceView,逻辑视图名为internalResource,对应URL为/index.jsp。在控制器方法中返回逻辑视图名,Spring会根据views.xml找到相应的视图进行渲染。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:

XmlViewResolver类简介说明

下文笔者讲述XmlViewResolver类的简介说明,如下所示:

XmlViewResolver类的简介说明

XmlViewResolver是XML视图解析器
它实现了ViewResolver接口
接受相同DTD定义的XML配置文件作为Spring的XML bean工厂
它继承自AbstractCachingViewResolver抽象类
即它也是支持视图缓存的
XmlViewResolver通过xml指定逻辑名称与真实视图间的关系
它从XML配置文件中查找视图实现(默认 XML 配置文件为 /WEB-INF/views.xml)

XmlViewResolver的使用方法

1.配置视图解析器

<bean id="viewResolver" class="org.springframework.web.servlet.view.XmlViewResolver">
    <property name="location" value="/WEB-INF/views.xml"></property> 
</bean>

配置视图配置文件views.xml里各项的配置

<bean id="parent-view" class="org.springframework.web.servlet.view.JstlView">
 <property name="attributes">
   <props>   <prop key="title">FlightDeals.com</prop>  <prop key="season">Summer</prop>
  </props>
</property>
<property name="url" value="/index.jsp"></property>
</bean>

<bean id="home" parent="parent-view">
   <property name="url" value="/WEB-INF/jsp/home.jsp"/>
</bean>

<bean id="listFlight" parent="parent-view">
   <property name="url" value="/WEB-INF/jsp/listFlights.jsp"/>
</bean>

在SpringMVC的配置文件中加入XmlViewResolver的bean定义
使用location属性指定其配置文件所在的位置,order属性指定当有多个ViewResolver的时候其处理视图的优先级
<bean class="org.springframework.web.servlet.view.XmlViewResolver">    
    <property name="location" value="/WEB-INF/views.xml"/>    
    <property name="order" value="1"/>    
</bean>

在XmlViewResolver对应的配置文件中配置好所需要的视图定义
 在下面的代码中我们就配置了一个名为internalResource的InternalResourceView
其url属性为"/index.jsp"

<?xml version="1.0" encoding="UTF-8"?>    
    <beans xmlns="http://www.springframework.org/schema/beans"    
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
    xsi:schemaLocation="http://www.springframework.org/schema/beans    
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">    
    <bean id="internalResource" class="org.springframework.web.servlet.view.InternalResourceView">    
        <property name="url" value="/index.jsp"/>    
    </bean>    
</beans>

定义一个返回的逻辑视图名称为在XmlViewResolver配置文件中定义的视图名称——internalResource。
@RequestMapping("/xmlViewResolver")    
public String testXmlViewResolver() {    
    return "internalResource";    
}
 
使用当我们访问到上面定义好的testXmlViewResolver处理器方法的时候返回的逻辑视图名称为“internalResource”
这时候Spring就会到定义好的views.xml中寻找id或name为“internalResource”的bean对象予以返回
这时Spring找到的是一个url为“/index.jsp”的InternalResourceView对象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值