最近要做app的服务端接口,要用json格式,就专门做了个工程,研究下spring mvc与json的整合。备忘
spring mvc返回json数据的几种方式(归纳网上做法):
1、直接 PrintWriter 输出
2、spring 内置 @ResponseBody
3、返回ModelAndView,在里面指定viewName
4、定义一个json的渲染viewResolver
我用的是第二种,比较简单,过程如下
1、准备工作 :搭个spring mvc 框架,采用 @ResponseBody方式还需要第三方jar包 (jackson,我会放在附件中)。
2、关键代码
springXX.xml
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
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
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"
default-autowire="byName">
<!-- 自动扫描controller bean,把作了注解的类转换为bean -->
<context:component-scan base-package="com.demo" />
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
<!-- 对模型视图名称的解析,在请求时模型视图名称添加前后缀 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/view/" p:suffix=".jsp">
<property name="order" value="0" />
</bean>
<mvc:annotation-driven />
<context:annotation-config />
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="stringHttpMessageConverter" />
<ref bean="mappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
<bean id="stringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
<property name = "supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json;charset=UTF-8</value>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
</beans>
controller类
@Controller
public class TestController {
@RequestMapping(value = "test1.htm",method=RequestMethod.GET)
@ResponseBody
public String test(HttpServletResponse response) {
//此处直接返回json字符串,会乱码,未解决,只能手动设了下
response.setContentType("text/html;charset=UTF-8");
try {
response.getWriter().print("{code2:i33中国}");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
@RequestMapping(value = "test2.htm")
@ResponseBody
public Map<String, Object> validataUser() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("code", "i am boy");
map.put("code2", "i33werwerew是田另是l; am boy");
return map;
}
@RequestMapping(value = "test3.htm")
@ResponseBody
public SUser ts() {
SUser su = new SUser();
su.setPwd("3334右国");
return su;
}
}
分享到:
相关推荐
将 Spring MVC 与 JSON 整合,可以实现高效、灵活的 Web 服务。 在 Spring MVC 中集成 JSON 的过程主要包括以下几个方面: 1. **JSON 库的引入**:为了处理 JSON 数据,我们通常会引入如 Jackson 或者 Gson 这样的...
在Spring MVC中,为了将Java对象转换成JSON格式并返回给客户端,我们需要依赖于JSON库。在提供的信息中,提到了`jackson-all-1.9.x.jar`系列的包,这是Jackson库的一个早期版本。Jackson是一个非常流行的JSON处理库...
以上是关于“spring mvc + spring + mybatis+json整合”的详细说明,这个整合方案是构建Web应用程序的常用技术栈,能够实现高效、灵活且可维护的开发。通过理解并掌握这些知识点,开发者可以更自如地开发和维护复杂...
1.创建第一个 Spring MVC 程序案例 2.Spring MVC @RequestMapping 注解案例 ...12.Spring MVC 实现 JSON 数据返回案例 13.Spring MVC 文件的上传与下载案例 14.Spring MVC 拦截器案例 15.Spring MVC 异常处理案例
SSM框架,即Spring、Spring MVC和MyBatis的整合,是Java开发中常见的Web应用框架,用于构建高效、灵活的后端服务。本教程将详细介绍如何配置和搭建这一框架,帮助开发者理解其核心概念和操作流程。 首先,我们要...
spring mvc的json和xml视图,dwr及静态资源等不同种类url整合,对应博客教程地址: http://blog.csdn.net/qgmzzn1/article/details/8465969
这个项目可能是为了演示如何在一个简单的添加删除操作中使用这些技术,通过整合Spring、Hibernate、Spring MVC和Ajax,实现一个高效、用户友好的后台管理系统。开发者可以通过学习这个示例,掌握如何在实际项目中...
在整合Spring MVC、Spring和Spring JDBC的实例中,你可能会看到以下几个关键部分: 1. **配置文件**:包括Spring的主配置文件(如`applicationContext.xml`),其中定义了Bean的配置,包括DataSource、JdbcTemplate...
在"Spring MVC+MyBatis整合项目源码"中,我们可以学习到以下关键知识点: 1. **Spring MVC配置**: - 配置Spring MVC的核心组件:DispatcherServlet、ApplicationContext配置、HandlerMapping和HandlerAdapter。 ...
8. **错误处理和日志记录**:Spring MVC提供了异常处理机制,可以定制化错误页面或返回JSON错误信息。同时,集成日志框架(如Log4j或Logback)对应用运行过程中的信息进行记录。 9. **测试**:例子中可能包含了单元...
将Spring MVC与Velocity整合,可以实现高效且易于维护的前端展示。 **1. Spring MVC 概述** Spring MVC是Spring框架的一部分,它提供了一个灵活的MVC实现,包括请求处理、模型绑定、异常处理等功能。通过...
在本文中,我们将深入探讨如何将Spring MVC、Spring和Mybatis这三大流行框架整合到一个Java Web项目中,创建一个高效、灵活的数据访问层。这个整合的Demo项目名为"ssm-demo",它是一个基于Maven构建的项目,这意味着...
在本文中,我们将深入探讨如何将Spring MVC、Spring和Hibernate这三大流行框架整合在一起,以构建一个完整的登录实例。这个实例旨在提供一个清晰、简洁且易于理解的代码结构,帮助初学者快速上手。 首先,Spring ...
最后,结果会被转换为ModelAndView对象,由Spring MVC的视图解析器确定如何返回给客户端,通常是一个JSP页面或者JSON数据。 这样的整合提供了高度模块化和松耦合的架构,使得代码更易于维护和扩展。同时,Spring的...
这个项目提供的示例工程应该包含了一个工作流程的完整实例,从Ajax请求到Spring MVC的处理,再到JSON响应的返回,帮助开发者理解并掌握这一技术栈的使用。通过深入研究和实践,你将能够熟练地在自己的项目中应用这些...
9. **配置Controller**:创建Spring MVC的Controller类,注入Service接口,处理HTTP请求,调用Service方法,最后返回视图或者JSON数据。 10. **运行测试**:启动应用,通过HTTP请求测试Controller是否能够正确调用...
Spring mvc 返回数据格式采用统一的对象(JSONReturn)进行封装 09. 通过自定义处理器 ExceptionIntercept 实现 Spring mvc的全局异常捕获 10. 系统中包含了企业中采用的开发工具类的集合 11. AbstractDao 父类...
下面将详细介绍 Spring MVC 整合 jar 包中的关键组件和作用。 1. **Spring Framework**: Spring 是一个全面的 Java 应用开发框架,它提供了 IoC(Inversion of Control,控制反转)和 AOP(Aspect-Oriented ...
1. **Ajax通信**:Spring MVC 提供了`@ResponseBody`和`@RestController`注解,可以将后端处理的结果直接转换为JSON或XML格式返回给前端。jQuery 的`$.ajax()`或`$.get()`、`$.post()`方法可以发送Ajax请求,接收并...
创建Spring MVC项目时,需要在`pom.xml`文件中添加Spring MVC、Spring核心以及其他依赖,如Spring Web和Jackson库(用于JSON序列化和反序列化)。 10. **IDE集成** 使用Eclipse、IntelliJ IDEA等IDE,可以快速...