多视图解析器的配置
问题:
视图解析器指的是Controler处理完请求,返回给系统的View名。那这个执行流程和具体配置怎么来玩呢?还有多视图配置等等
定义:
视图解析器: 视图解析器通过名字来解析视图,springmvc内置的视图识别,然后跳转到相应的页面进行友好展示。
常用的视图解析器:
(我是通过源码查看的视图解析器,比这些要全面:)
具体怎么实现可以追一下源码
多视图解析器的配置:
先引入我的配置文件信息:
<!--===============通用视图解析器 begin===============--> <!--视图解析器一 处理jsp --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"><!--注入的任何bean的id保证唯一 --> <property name="prefix" value="/WEB-INF/view/" /> <!-- 默认的前缀--> <property name="suffix" value=".jsp" /><!-- 后缀--> <property name="viewClass"><!-- 这个玩意可以不指定,他就会默认使用默认的视图解析类,默认解析.jsp后缀--> <value>org.springframework.web.servlet.view.InternalResourceView </value> </property> <property name="order" value="1" /><!--多试图解析器的必须写的参数 也是视图解析器的优先等级。值越小 越优先执行--> </bean> <!--视图解析器一 处理freeMarker --> <!-- 配置freeMarker视图解析器 --> <bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"> <property name="viewClass" value="com.huhy.freemarker.extend.FreeMarkerViewExtend" /> <!-- 把Freemarker 扩展一下,把相关属性加入进去。。。 --> <property name="contentType" value="text/html; charset=utf-8" /> <property name="cache" value="true" /> <property name="suffix" value=".ftl" /> <property name="order" value="0" /> <!--多试图解析器的必须写的参数 也是视图解析器的优先等级。值越小 越优先执行--> </bean> <!-- 配置freeMarker 配置--> <bean id="freemarkerConfig" class="com.huhy.freemarker.extend.FreeMarkerConfigExtend"> <property name="templateLoaderPath"> <value>/WEB-INF/ftl/</value> <!--也可以把value标签去了--> </property> <property name="freemarkerVariables"> <map> <entry key="xml_escape" value-ref="fmXmlEscape" /> <entry key="api" value-ref="api"/> </map> </property> <property name="defaultEncoding"> <value>utf-8</value> </property> <property name="freemarkerSettings"> <props> <prop key="defaultEncoding">UTF-8</prop> <prop key="url_escaping_charset">UTF-8</prop> <prop key="locale">zh_CN</prop> <prop key="boolean_format">true,false</prop> <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop> <prop key="date_format">yyyy-MM-dd</prop> <prop key="time_format">HH:mm:ss</prop> <prop key="number_format">#</prop> <prop key="whitespace_stripping">true</prop> </props> </property> </bean> <!--===============通用视图解析器 end===============-->
模拟两个请求:
/user/a
/person/b
先默认在ftl找,再到jsp中查询 最后没有返回404错误页面 具体代码不贴了
本文来自博客园,作者:huhy,转载请注明原文链接:https://www.cnblogs.com/huhongy/p/7998278.html