SSM-SpringMVC-13:SpringMVC中XmlViewResolver视图解析器
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥-------------
还记得上篇博客提出来的问题吗?
BeanNameViewResolver视图解析器每使用一道视图,就得手工配置一道,麻烦啊,最重要的一点,如果视图多了,你这个核心的xml配置文件还怎么看?又乱又长
所以XmlViewResolver这个视图解析器,就是来carry这个问题的
怎么解决?不懂啊?看完案例,我给你描述,现在简单提一句,就是把自己定义的视图实例提出来到一个单独的xml文件中
案例,紧接上篇:
新建一个xml文件,我的名字叫:ApplicationContext-day09Zview.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!--视图xml--> <!--外部视图--> <bean id="OuterViewObject" class="org.springframework.web.servlet.view.RedirectView"> <property name="url" value="https://www.jd.com"></property> </bean> <!--内部视图--> <bean id="jstlViewObject" class="org.springframework.web.servlet.view.JstlView"> <property name="url" value="/second.jsp"></property> </bean> </beans>
我把上篇博客的视图实例放到了此处,那么自己的核心配置文件怎么与之关联,就又需要考虑一下
自己的核心配置文件:(较上篇博客的做了一些改动)
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!--配置bean处理器--> <bean id="myViewController" class="cn.dawn.day08ViewResolver.MyViewController"> <property name="methodNameResolver" ref="parameterMethodNameResolver"></property> </bean> <!--xml视图解析器--> <bean class="org.springframework.web.servlet.view.XmlViewResolver"> <property name="location" value="classpath:ApplicationContext-day09Zview.xml"></property> </bean> <!--参数方法名称解析器--> <bean id="parameterMethodNameResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> <property name="paramName" value="actionName"></property> </bean> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <!--第一种方式--> <property name="urlMap"> <map> <entry key="/doFirst"> <value>myViewController</value> </entry> </map> </property> </bean> </beans>
之后只需要将web.xml改成新的这个配置文件即可
其它的(像页面和自定义的处理器)与之前的一般无二
------配置式开发springmvc结束,引入注解版-----