`

使用内容协商让Spring MVC支持 json格式输出

阅读更多
  1. web.xml配置如下

     
 <servlet>
  <servlet-name>dispatherContext</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
  <servlet-name>dispatherContext</servlet-name>
  <url-pattern>*.json</url-pattern>
 </servlet-mapping>

 

2.   dispatherContext-servlet.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:context="http://www.springframework.org/schema/context"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
  http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
 <context:component-scan base-package="com.zjhcsoft.mobi.web" />
 <context:annotation-config />
 <bean
  class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
  <property name="ignoreAcceptHeader" value="true" />
  <property name="defaultContentType" value="text/html" />
  <property name="mediaTypes">
   <map>
    <entry key="json" value="application/json" />
   </map>
  </property>
  <property name="favorParameter" value="false" />
  <property name="viewResolvers">
   <list>
    <bean class="org.springframework.web.servlet.view.BeanNameViewResolver" />
   </list>
  </property>
  <property name="defaultViews">
   <list>
    <bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" />
   </list>
  </property>
 </bean>

</beans>

 

3.  

 

 @RequestMapping("/queryKPIDetail.json")
 public void queryKPIDetail(ModelMap modelMap,HttpServletRequest request) {
  //request请求参数
  String kpiId = request.getParameter("kpiId");
  String operateDate = request.getParameter("operateDate");
  
  
  List<Map<String, String>> list = jdbcBaseDAOImpl.queryForList(kpiSql);
  modelMap.put("mobi", list);
 }

 

4.http://localhost/login.json?phone=15988104039 访问即可返回json格式的数据

分享到:
评论

相关推荐

    Spring MVC 3.0实战指南.ppt

    使用支持格式化的转换器 数据校验框架 JSR 303 数据校验框架 如何使用注解驱动的校验 使用校验功能时,处理方法要如何签名?? 校验错误信息存放在什么地方?? 页面如何显示错误信息 如何对错误信息进行国际化(1) ...

    Spring3MVC注解教程.ppt

    使用支持格式化的转换器 数据校验框架 JSR 303 数据校验框架 如何使用注解驱动的校验 使用校验功能时,处理方法要如何签名?? 校验错误信息存放在什么地方?? 页面如何显示错误信息 如何对错误信息进行...

    Spring 3 MVC ContentNegotiatingViewResolver Example

    在本文中,我们将深入探讨Spring 3 MVC框架中的ContentNegotiatingViewResolver组件,这是一个用于内容协商的关键工具,它使得应用程序能够根据用户代理或请求参数返回适当格式的响应。...

    SpringMVC框架中传递JSON数据时前台报406错误解决办法

    正确配置Spring MVC的JSON支持,确保前端和后端的数据类型匹配,是避免406错误的关键。同时,保持库版本的兼容性也是保证程序稳定运行的重要环节。通过这些措施,我们能够顺利地在Spring MVC应用中传递和处理JSON...

    测试springmvc3

    4. **内容协商**:此版本引入了内容协商功能,允许服务器根据客户端的接受类型(如 Accept 头)返回不同的格式,如 JSON、XML 或 HTML,增强了服务的可复用性。 5. **RESTful 支持**:通过 `@RequestMapping` 注解...

    基于注解的spring_3.0.x_MVC学习笔记

    4. **内容协商**:Spring 3.0支持多种媒体类型的响应,例如JSON、XML等,通过@Produces和@Consumes注解进行内容类型的选择。 5. **模板引擎集成**:Spring 3.0加强了对各种视图技术(如FreeMarker、Thymeleaf、JSP...

    Springmvc项目

    - **内容协商**: 支持多种格式的响应,如 JSON、XML。 4. **CRUD 操作** - **Create**: 创建新记录,通常使用 POST 请求。 - **Read**: 获取记录,GET 请求用于查询。 - **Update**: 更新记录,PUT 请求用于...

    springmvc 中文手册详细带书签.pdf

    Spring 3.2版本新增了对Servlet 3异步请求处理的支持、改进了Spring MVC的测试框架、增强了内容协商功能、支持泛型的RestTemplate、对@RequestBody参数的支持,以及对日期和时间格式化的全球支持等。另外,Spring ...

    spring getting started

    在Spring MVC中,当请求处理完成后,通常是由视图(View)负责生成最终输出格式的内容。这可以是一个JSP页面、Velocity模板或者JSON响应等。Spring MVC使用不同的策略来决定哪个Controller以及Controller中的哪个...

    springmvc3.0所需jar绿色包

    4. **内容协商**:这个特性允许服务器根据客户端的偏好返回不同的格式,比如 JSON 或 XML,可以通过 `@RequestMapping` 注解的 `produces` 和 `consumes` 属性来指定。 5. **MVC 视图解析**:Spring MVC 3.0 引入了...

    spring 3.0 应用springmvc 构造RESTful URL 详细讲解

    RESTful服务应支持多种数据格式,如JSON、XML等。Spring MVC通过`produces`和`consumes`属性来指定控制器方法支持的媒体类型。 8. **安全性** 考虑到RESTful服务可能暴露给公众,安全性是重要的考虑因素。Spring ...

    SpringMVC3.0_Demo

    5. **内容协商**: 允许服务器根据客户端的能力返回不同格式的数据,如JSON、XML等,通过`@RequestMapping`的produces属性实现。 6. **国际化支持**: `MessageSource`接口提供国际化消息管理,使应用能适应不同地区...

    使用Spring构建Restful的Web服务.pdf

    - **内容格式协商**:允许客户端指定接受的内容格式,如JSON或XML。 - **HTTP缓存**:利用HTTP协议中的缓存机制,减少重复请求,提高性能。 - **Cache-Control**:用于控制缓存的行为。 - **ETags**:一种标识资源...

    spring官方文档pdf

    - Spring 3.2版本中,支持Servlet 3异步请求处理基础,SpringMVC的测试框架得到增强,内容协商和@ControllerAdvice注释的改进。 - 引入了基于代码的Servlet 3+容器初始化抽象基类,以及...

    第六节 Web MVC REST 应用1

    此外,Spring MVC还提供了一些核心组件,如ContentNegotiationManager和ContentNegotiationStrategy,它们用于处理内容协商,即确定客户端期望的响应格式。根据HTTP请求头中的Accept字段,服务器可以选择合适的内容...

    Spring Boot中文文档.rar

    路径匹配和内容协商 28.1.9.ConfigurableWebBindingInitializer 28.1.10.模板引擎 28.1.11.错误处理 自定义错误页面 将错误页面映射到Spring MVC之外 28.1.12.Spring HATEOAS 28.1.13.CORS支持 ...

    SpringMVC环境下实现的Ajax异步请求JSON格式数据

    为了更好地处理内容协商,我们还可以配置`ContentNegotiationManager`,它根据请求头或URL扩展名来决定响应的数据格式。 现在,我们转向服务器端的处理。在Spring MVC的控制器类中,我们可以定义一个接受Ajax请求的...

    Spring Framework 4.1源代码

    在4.1版本中,Spring MVC增加了对ContentNegotiatingViewResolver的改进,使得内容协商更加智能,可以更好地处理多种格式的响应,如JSON、XML等。此外,模型视图名转换器(ModelAndViewNameTransformer)的引入允许...

    SpringMVC使用@ResponseBody.rar

    Spring MVC支持内容协商,即根据客户端的Accept头选择合适的响应类型。例如,如果客户端请求JSON,而服务器端返回一个XML对象,`@ResponseBody`会尝试找到适当的`MessageConverter`来完成转换。 4. **异常处理** ...

    使用spring构建RESTful的Web服务

    - **内容格式协商**:允许客户端指定希望接收的数据格式(如JSON或XML)。 - **HTTP缓存**:通过设置适当的缓存头(如Cache-Control、ETags)来减少不必要的网络往返,提高响应速度。 #### 安全性 - **鉴权**:...

Global site tag (gtag.js) - Google Analytics