Spring MVC一个方法适用多种调用方式

  • web.xml

  • spring-mvc.xml
<mvc:annotation-driven />
    <context:component-scan base-package="com.cnfwsy" />
    <context:annotation-config />
    <!-- 避免IE在ajax请求时,返回json出现下载 <bean id="jacksonMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
        <property name="supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value>
        </list> </property> </bean> -->

    <!-- 对模型视图添加前后缀 -->
    <bean id="viewResolver"    class="org.springframework.web.servlet.view.InternalResourceViewResolver"
        p:prefix="/jsp/" p:suffix=".jsp" />

    <bean
        class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
        <property name="order" value="1" />
        <property name="favorParameter" value="false" />
        <property name="ignoreAcceptHeader" value="true" />
        <property name="mediaTypes">
            <map>
                <entry key="json" value="application/json" />
                <entry key="xml" value="application/xml" />
            </map>
        </property>
        <property name="viewResolvers">
            <list>
                <bean class="org.springframework.web.servlet.view.BeanNameViewResolver" />
                <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
                    <property name="prefix" value="/jsp/" />
                    <property name="suffix" value=".jsp" />
                </bean>
            </list>
        </property>
        <!-- 默认使用MappingJacksonJsonView生成jsonview -->
        <property name="defaultViews">
            <list>
                <bean class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
                    <property name="extractValueFromSingleKeyModel" value="true" />
                </bean>
                <bean class="org.springframework.web.servlet.view.xml.MarshallingView">
                    <property name="marshaller">
                        <bean class="org.springframework.oxm.xstream.XStreamMarshaller" />
                    </property>
                </bean>
            </list>
        </property>

    </bean>
  • 效果

1、这是后台的app和web公用方法:

2,这是前台ajax请求:

3,这是前台的普通请求:

时间: 2024-08-08 07:49:59

Spring MVC一个方法适用多种调用方式的相关文章

spring mvc 控制器方法传数组对象的一些经验

因为项目需要在一个表单里面提交多个对象,比较好的做法就是直接在控制器方法参数里传一个数组. 由于Spring mvc框架在反射生成控制方法的参数对象的时候会调用这个类的getDeclaredConstructor方法来获得构造函数, 但是一直报NoSuchMethodException的异常. 根据这个方法的jdk文档,这个类是一个数组对象时,这个方法会抛出java.lang.NoSuchMethodException,因为接口.数组类.void.基本类型没有构造函数. 同事后来给我支了两招,使

WCF多种调用方式兼容

原文:WCF多种调用方式兼容 1.能被ajax get 2.能post 3.wcf正常调用 实现: 1 [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 2 [JavascriptCallbackBehavior(UrlParameterName = "jsoncallback")] 3 public class WCFJsonTest :

Spring MVC处理异常的4种方式

http://blog.csdn.net/ufo2910628/article/details/40399539 http://my.oschina.net/CandyDesire/blog/333340 Spring MVC处理异常有3种方式: (1)使用Spring MVC提供的简单异常处理器SimpleMappingExceptionResolver: (2)实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器: (3)使用@Excepti

python--把一个方法变成属性调用

# coding=utf-8 ''' 装饰器(decorator)可以给函数动态加上功能,对于类的方法,装饰器一样起作用.Python内置的@property装饰器就是负责把一个方法变成属性调用的: @property:把一个getter方法变成属性 @score.setter:负责把一个setter方法变成属性赋值 ''' class Screen(object): #读属性 @property def width(self): return self.value_of_width #写属性

spring mvc 控制器方法传递一些经验对象的数组

由于该项目必须提交一个表单,其中多个对象,更好的方法是直接通过在控制器方法参数的数组. 因为Spring mvc框架在反射生成控制方法的參数对象的时候会调用这个类的getDeclaredConstructor方法来获得构造函数, 可是一直报NoSuchMethodException的异常. 依据这种方法的jdk文档,这个类是一个数组对象时,这种方法会抛出java.lang.NoSuchMethodException,由于接口.数组类.void.基本类型没有构造函数. 同事后来给我支了两招,使用A

Spring MVC控制器方法参数类型

HttpServletRequest Spring会自动将 Servlet API 作为参数传过来 HttpServletResponse InputStream 相当于request,getInputStream() 获取请求区内容字节流 OutputStream 相当于request.getOutputStream() 获取响应区内容字节流 Reader request.getReader() Writer request.getWriter() 注意InputStream/OutputSt

spring mvc一个小问题

ajax请求时往往希望得到json格式数据,那么问题来了:spring mvc就得配一配,这一配 @ResponseBody 就OK了,试一下,不好使,百度之,少jackson.jar,加之,不好使,又百度之,得此博文http://www.blogjava.net/kelly/archive/2014/11/16/420154.html 其二条曰: <mvc:annotation-driven/> 它提供了读取jason的支持 试之,大喜!----

spring mvc处理方法返回方式

Model: package org.springframework.ui; import java.util.Collection; import java.util.Map; public interface Model { Model addAttribute(String attributeName, Object attributeValue); Model addAttribute(Object attributeValue); Model addAllAttributes(Coll

spring mvc 的各种参数的绑定方式

本文转自http://www.cnblogs.com/HD/p/4107674.html SpringMVC的各种参数绑定方式 1. 基本数据类型(以int为例,其他类似):Controller代码: @RequestMapping("saysth.do") public void test(int count) { } 表单代码: <form action="saysth.do" method="post"> <input n