精华内容
下载资源
问答
  • Spring配置Freemarker视图解析器,配置多视图解析器
  • 金蝶shr视图配置属性说明,列表、表单界面的视图配置说明
  • Spring MVC配置多视图解析器

    千次阅读 2017-12-17 13:56:28
    SpringMVC配置文件: 访问Controller的时候URL加上后缀即可,如url:path+"userController/view.json"或者data:{id:ob

    功能描述:控制服务器端返回的数据格式

    SpringMVC配置文件:

    <!-- 配置多视图解析器,允许同样内容的数据呈现不同的view -->
    	<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
    		<!-- true表示支持参数匹配,可以根据请求参数的值确定MIME(资源的媒体类型)类型,默认的请求参数为fotmat -->
    		<property name="favorParameter" value="true"/>
    		<!-- 默认的数据展示格式 -->
    		<property name="defaultContentType" value="text/html"/>
    		<!-- 根据请求参数值和MIME类型的映射列表,即contentType以何种格式来展示,若请求中有.json,则会以application/json的格式展示 -->
    		<property name="mediaTypes">
    			<map>
    				<entry key="html" value="text/html;charset=UTF-8"></entry>
    				<entry key="json" value="application/json;charset=UTF-8"></entry>
    				<entry key="xml" value="application/xml;charset=UTF-8"></entry>
    			</map>
    		</property>
    		<property name="viewResolvers">
    			<list>
    				<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    					<property name="prefix" value="/jsp/"></property>
    					<property name="suffix" value=".jsp"></property>
    				</bean>
    			</list>
    		</property>
    	</bean>



    访问Controller的时候URL加上后缀即可,如url:path+"userController/view.json"或者data:{id:obj.attr("userid"),format:"json"}
    同时Controller不需要在进行数据格式的转换

    展开全文
  • Spring MVC 视图解析器配置

    万次阅读 2016-04-14 09:34:59
    背景: 在web开发中,我们在前端通常使用视图来展示我的数据模型,常用的视图有JSP、XML、JSON、velocity、FreeMarker等。在Spring MVC应用程序中,常用的视图解析器有...那么,在程序中怎么配置JSP、XM

    背景:

    在web开发中,我们在前端通常使用视图来展示我的数据模型,常用的视图有JSP、XML、JSON、velocity、FreeMarker等。在Spring MVC应用程序中,常用的视图解析器有InternalResourceViewResolver、ResourceBundleViewResolver和XmlViewResolver等。

    问题一:

    那么,在程序中怎么配置JSP、XML、JSON、velocity、FreeMarker他们的解析器呢?

    解决方法:

    <!-- jsp视图解析器 -->  
    <!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/jsp/" p:suffix=".jsp" /> -->
    <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>  
        <property name="prefix" value="/jsp/"/>  
        <property name="suffix" value=".jsp"/>  
    </bean>          
    
    <!-- velocity视图解析器 -->  
    <bean id="velocityViewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">  
        <property name="cache" value="true"/>  
        <property name="prefix" value="/velocity/"/>  
        <property name="suffix" value=".vm"/>  
    </bean>  
    
    <!-- velocity环境配置 -->  
    <bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">  
        <!-- velocity配置文件路径 -->  
        <property name="configLocation" value="/WEB-INF/velocity.properties"/>  
        <!-- velocity模板路径 -->  
        <property name="resourceLoaderPath" value="/WEB-INF/velocity/"/>  
    </bean>  
    
    <!-- FreeMarker环境配置 -->  
    <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  
        <!-- freemarker模板位置 -->  
        <property name="templateLoaderPath" value="/WEB-INF/freemarker/"/>  
    </bean>  
    
    <!-- FreeMarker视图解析 -->  
    <bean id="freeMarkerViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
        <property name="cache" value="true"/>  
        <property name="prefix" value="/freemaker/"/>  
        <property name="suffix" value=".ftl"/>  
    </bean>  
    
    <!-- Json视图解析 -->  
    <bean name="jsonView" class="org.springframework.web.servlet.view.json.MappingJacksonJsonView">
        <property name="encoding">
            <value type="org.codehaus.jackson.JsonEncoding">UTF8</value>
        </property>
        <property name="extractValueFromSingleKeyModel" value="true"></property>
        <property name="contentType" value="application/json;charset=UTF-8" />
    </bean>
    
    <!-- xml jaxb视图解析 -->  
    <bean id="xmlViewer" class="org.springframework.web.servlet.view.xml.MarshallingView">
        <constructor-arg>
          <bean class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
            <property name="classesToBeBound">
                <list>
                </list>
            </property>
          </bean>
        </constructor-arg>
        <property name="contentType" value="application/xml;charset=UTF-8" />
    </bean>
    
    <!-- xml Xstream视图解析 -->  
    <bean id="xmlViewer" class="org.springframework.web.servlet.view.xml.MarshallingView">
        <property name="xStreamMarshaller">
            <bean class="org.springframework.oxm.xstream.XStreamMarshaller">
            <!-- 启用annotation -->
            <property name="autodetectAnnotations" value="true" />
            <!-- 支持在dto列表 -->
            <property name="supportedClasses"><array></array></property>
        </property>
    </bean>
    
    <!-- 文件上传 -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <!--1024**1024*5即5M-->
        <property name="maxUploadSize" value="5242880"/>
    </bean>
    

    问题二:

    如果想用多个视图解析器,那么又怎么配置呢?

    解决方法一:

    在问题一解决方法的配置中,通过“order”属性来声明优先级,order值越低,则优先级越高。例如:

    <bean class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
        <property name="basename">
            <value>spring-views</value>
        </property>
        <property name="order" value="0" />
    </bean>
    
    <bean class="org.springframework.web.servlet.view.XmlViewResolver">
        <property name="location">
            <value>/WEB-INF/spring-views.xml</value>
        </property>
        <property name="order" value="1" />
    </bean>
    
    <bean id="viewResolver"
          class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
        <property name="prefix">
            <value>/WEB-INF/pages/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
        <property name="order" value="2" />
    </bean>

    注意:InternalResourceViewResolver必须总是赋予最低的优先级(最大的order值),因为不管返回什么视图名称,它都将解析视图。如果它的优先级高于其它解析器的优先级的话,它将使得其它具有较低优先级的解析器没有机会解析视图。

    解决方法二: 使用org.springframework.web.servlet.view.ContentNegotiatingViewResolver进行配置,如下:

     <!-- 多视图解析 .json .xml -->
    <bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
        <property name="order" value="1" />
        <!-- 用于开启 /userinfo/123?format=json 的支持 默认是true -->
        <property name="favorParameter" value="false" />
        <!-- 用于关闭 /userinfo/123.json 的支持 默认是true -->
        <property name="favorPathExtension" value="true" />
        <!-- 设置为true以忽略对Accept Header的支持 -->
        <property name="ignoreAcceptHeader" value="true" />
        <!-- 在没有扩展名时即: "/user/1" 时的默认展现形式 -->
        <property name="defaultContentType" value="text/html" />
        <!-- 扩展名至mimeType的映射,即 /user.json => application/json -->
        <property name="mediaTypes">
            <map>
                <entry key="json" value="application/json" />
                <entry key="xml" value="application/xml" />
            </map>
        </property>
        <property name="defaultViews">
            <list>
              <ref bean="jsonView" />
              <ref bean="xmlViewer" />
            </list>
        </property>
    </bean>
    
    <!-- json 视图 -->
    <bean name="jsonView" class="org.springframework.web.servlet.view.json.MappingJacksonJsonView">
        <property name="encoding">
            <value type="org.codehaus.jackson.JsonEncoding">UTF8</value>
        </property>
        <property name="extractValueFromSingleKeyModel" value="true"></property>
        <property name="contentType" value="application/json;charset=UTF-8" />
    </bean>
    
    <!-- xml 视图 -->
    <bean id="xmlViewer" class="org.springframework.web.servlet.view.xml.MarshallingView">
        <constructor-arg>
          <bean class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
            <property name="classesToBeBound">
                <list>
                </list>
            </property>
          </bean>
        </constructor-arg>
        <property name="contentType" value="application/xml;charset=UTF-8" />
    </bean>
    展开全文
  • 翻看很博客都是关于如何配置多个不同类的视图解析器,网上也没人问这个问题,估计是太简单了吧。好在慢慢摸索出了解决方案。 比如我要访问如下curp和userCURD文件夹下的jsp文件 &lt;bean class="org....

    翻看很多博客都是关于如何配置多个不同类的视图解析器,网上也没人问这个问题,估计是太简单了吧。好在慢慢摸索出了解决方案。
    比如我要访问如下curp和userCURD文件夹下的jsp文件
    这里写图片描述

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
            <property name="prefix" value="/" /><!--  关键在这里-->
            <property name="suffix" value=".jsp" />    
    </bean>

    那么在配置前缀时,路径写两个文件夹共同的上级目录就好了,也就是value=”/”.
    在controller类中跳转目录补全。如:

    mav.setViewName("userCURD/UserList");
    mav.setViewName("curp/BookList");
    展开全文
  • ContentNegotiatingViewResolver可以根据请求所要求的MIME类型决定由那个视图解析器负责处理,即它允许以同样的内容数据来呈现不同的View(HTML、JSON、XML、XLS)。 例: /user/view.json?id=12(返回JSON格式的...

    文章有bug,待更正,请绕道,抱歉~

    ContentNegotiatingViewResolver可以根据请求所要求的MIME类型决定由那个视图解析器负责处理,即它允许以同样的内容数据来呈现不同的View(HTML、JSON、XML、XLS)。

    例:
    /user/view.json?id=12(返回JSON格式的用户明细信息)
    /user/view.html?id=12(返回一个HTML格式的用户明细信息)
    /user/view.xml?id=12(返回XML格式的用户明细信息)

    通过ContentNegotiatingViewResolver,其实就达到了同一资源(用户明细信息)根据相同URL访问,并通过设置MIME格式控制服务器端返回的数据格式,从而获取不同形式的返回内容。代码如下:

    	<!-- 配置视图解析器:允许同样的内容数据呈现不同的View -->
    	<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
    		<property name="favorParameter" value="true"/>
    		<property name="defaultContentType" value="text/html"/>
    		<property name="mediaTypes">
    			<map>
    				<entry key="html" value="text/html;charset=UTF-8"/>
    				<entry key="json" value="application/json;charset=UTF-8"/>
    				<entry key="xml" value="application/xml;charset=UTF-8"/>
    			</map>
    		</property>
    		<!-- 映射视图路径 -->
    		<property name="viewResolvers">
    			<list>
    				<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    					<property name="prefix" value="/WEB-INF/jsp/" />
    					<property name="suffix" value=".jsp" />
    				</bean>
    			</list>
    		</property>	
    	</bean>
    

    关于ContentNegotiatingViewResolver的相关属性配置如下

    • favorParameter属性: 设置为true(默认为true),则表示支持参数匹配,可以根据请求参数的值确定MIME类型,默认的请求参数为format。

    • mediaTypes属性: 根据请求参数值和MIME类型的映射列表,即contentType以何种格式来展示,若请求URL中的后缀为".json",则会以application/json的格式进行数据的展示。

    • viewResolvers属性: 表示网页视图解析器,JSP技术采用InternalResourceViewResolver进行视图解析。

    注: ContentNegotiatingViewResolver最大的作用就是增加了对MediaType(也称为Content-type)和后缀的支持。它对于具体的网页视图解析则是使用viewResolvers属性中的ViewResolver来解析。

    展开全文
  • Spring MVC配置文件配置视图解析器

    千次阅读 2018-10-29 20:16:48
    spring mvc配置文件 &amp;amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;amp;gt; &amp;amp;lt;beans xmlns=&amp;quot;...
  • springBoot配置视图解析器

    千次阅读 2020-03-17 15:57:29
    1.直接写一个配置类继承WebMvcConfigurerAdapter即可 具体代码如下: package com.boot.zhiyi.config; import org.springframework.context.annotation.Configuration; import org.springframework.core.Ordered; ...
  • Springboot配置多视图解析器,项目同时有jsp和html

    万次阅读 热门讨论 2019-03-28 14:12:15
    废话有点。。大家谅解下啊,如果着急的话可以直接下拉到底部,上面是我的解决历程。。 这个问题一般是遇不到的,只怪我们项目是在奇葩。事情是这样的,我们先开发的项目要集成进去一个老项目,新项目用的是html,...
  • 近期看了点Spring boot的框架源码,研究了一下WEB Mvc的视图解析器,记录一下,以备以后查阅.如果认知错误,还请小伙伴指教讨论. ViewResolver 视图解析器
  • 最近做一个小项目(移动端),自己搭了个简单的SSM框架(spring + spring MVC + Mybitis),展示层本来选用的是jsp...本篇先来介绍框架内配置多视图解析器的方式:   在spring-mvc.xml中配置: 网上看的大部分都是采用
  • SpringMVC配置多个模板视图解析器

    千次阅读 2018-06-11 03:30:25
    -- 3:配置多个ViewResolver视图解析 --&amp;gt; &amp;lt;!-- 3.1 配置velocity的配置信息 --&amp;gt; &amp;lt;bean id=&quot;velocityConfig&quot; class=&quot;o
  • UML配置视图-部署图详解

    千次阅读 2019-10-20 03:36:56
    UML配置视图-部署图 提示: 对UML基础还不太了解或想查阅学习其他UML图的戳这的戳这UML统一建模语言快速入门.CSDN 配置图是对面向对象系统的物理方面建模时使用的两种图之一,另一种图是组件图。 配置图显示了运行...
  • spring boot中配置jsp视图解析器

    千次阅读 2018-06-11 22:03:09
    启动器@SpringBootApplication public class ApplicationRun { public static void main(String[] args) { SpringApplication.run(ApplicationRun.class, args);...}1234567配置类@Configuration @Enable...
  • mvc jsp视图解析器 -- > < bean id = "viewResolver" class = "org.springframework.web.servlet.view.InternalResourceViewResolver" > < property name = "viewClass" value = "org.springframework....
  • SpringMVC可以通过URL... SpringMVC:多视图[JSP,JSON,Excel,XML]混合输出__Java配置方式 maven 依赖 XML视图-->dependency> groupId>com.fasterxml.jackson.coregroupId> artifactId>jackson-data
  • springMVC 配置多视图解析器

    千次阅读 2017-03-03 12:41:23
    -- 视图解析器 --> class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property> ...
  • 要注意在类上面加上@Component的注解,因为看BeanNameViewResolver的源码知道,是直接从ioc容器里面拿的根据名字拿的视图,所以我们得把我们自己写的视图放到容器里面。HelloView.javapackage ...
  • springmvc配置视图解析器和重定向

    千次阅读 2020-09-13 18:19:30
    为什么需要配置视图解析器 看图 配置步骤 第一步:需要在springmvc.xml配置 <!-- 配置SpringMVC的视图解析器: 配置前缀和后缀 --> <bean class="org.springframework.web.servlet.view....
  • 问题 在Spring MVC应用程序中,我们经常需要应用一些视图解析器策略来解析视图名称。例如,联合使用三个视图解析器:InternalResourceViewResolver、...如果应用了视图解析器策略,那么就必
  • springMVC视图解析器的配置和使用

    千次阅读 2018-10-28 10:47:58
    在spring-servlet.xml中配置视图解析器 &lt;!-- 配置视图解析器 --&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;...
  • Spring MVC(四)——配置视图解析器

    千次阅读 2019-07-29 16:53:40
    Spring MVC中所有的控制器(controller)方法都必须返回一个逻辑视图的名字(也许是显示返回:比如返回一个String,View,ModelAndView等,也可能是隐式返回:比如基于约定的返回)。在Spring中,视图是由一个视图名...
  • Spring Boot 配置视图前缀

    千次阅读 2019-08-07 22:20:37
  • 关于springboot 视图配置问题

    千次阅读 2018-12-21 10:24:29
    先说明 本人是刚进入springboot 阶段的小白 但这中间 我发现了很没有明确的问题 比如 什么情况下返回视图该怎么整?一定要看完 这会让你不在迷惑 先总结一下 其他地方学来的东西 @RestController 和 @Controller ...
  • 一、Springboot1.x中的配置不再适用 在Springboot2.x中,使用JSP时,打成jar包时运行,JSP会出现404,问题主要来源于Springboot对jsp的支持限制。因此想要Springboot项目中的jsp和thymeleaf同时生效必须将...
  • SpringMVC 多视图解析器配置

    千次阅读 2018-08-07 16:55:23
    SpringMVC模式可以通过如下配置来支持多视图解析:   在spring 中,常用的ViewResolver 有如下几种: InternalResourceViewResolver 将逻辑视图名字解析为一个路径 BeanNameViewResolver 将逻辑视图名字...
  • SpringMVC请求和视图配置

    千次阅读 2018-05-22 19:53:32
    SpringMVC以简单高效著称,它可以处理多种数据请求格式和响应多种视图,只需要几个简单的配置即可,具体配置如下。 首先,在SpringMVC的servlet配置文件中添加标签:&amp;lt;mvc:annotation-driven&amp;gt;...
  • 认识配置视图 5.3 步骤 实现此案例需要按照如下步骤进行。 步骤一:进入配置终端及切换视图 1)进入系统视图 The device is running! <Huawei> //用户模式 <Huawei> system-view //切进系统视图 Enter ...
  • springMVC配置jsp、html多视图解析器

    千次阅读 2018-05-26 14:54:02
    -- html视图解析器 必须先配置freemarkerConfig,注意html是没有prefix前缀属性的 --> < bean id = "freemarkerConfig" class = "org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer" > ...
  • 今天springboot尝试配置视图解析器的时候,如图: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190411205709241.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190411205722368.png) ![在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 530,386
精华内容 212,154
关键字:

多配置位置视图