Spring mvc实现Restful返回json格式数据实例详解 在本示例中,我们将向您展示如何将对象转换成json格式并通过spring mvc框架返回给用户。 使用技术及环境: Spring 3.2.2.RELEASE Jackson 1.9.10 JDK 1.6 Eclipse 3.6 Maven 3 PS:在spring 3 中,要输出json数据,只需要添加Jackson 库到你的classpath。 1、项目依赖 spring和jackson的依赖: 4.0.0 com.mkyong.common SpringMVC war 1.0-SNAPSHOT SpringMVC Json Webapp http://maven.apache.org 3.2.2.RELEASE 1.9.10 1.6 org.springframework spring-core ${spring.version} org.springframework spring-web ${spring.version} org.springframework spring-webmvc ${spring.version} org.codehaus.jackson jackson-mapper-asl ${jackson.version} SpringMVC org.apache.maven.plugins maven-eclipse-plugin 2.9 true false 2.0 org.apache.maven.plugins maven-compiler-plugin 2.3.2 ${jdk.version} ${jdk.version} 2、Model 一个简单的JavaBean,稍后将被转换成json格式输出。 public class Shop { String name; String staffName[]; //getter and setter methods } 3、Controller 添加@ResponseBody到返回值,我们看到: Jackson 包已经在项目的 classpath mvc:annotation-driven注解已经启用 返回方法已经添加了@ResponseBody spring会自动处理json的转换。 import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import com.mkyong.common.model.Shop; [@Controller](http://my.oschina.net/u/1774615) @RequestMapping("/kfc/brands") public class JSONController { @RequestMapping(value="{name}", method = RequestMethod.GET) public @ResponseBody Shop getShopInJSON(@PathVariable String name) { Shop shop = new Shop(); shop.setName(name); shop.setStaffName(new String[]{"mkyong1", "mkyong2"}); return shop; } } 4、mvc:annotation-driven 在你的spring配置文件中启用mvc:annotation-driven注解。 5、示例结果 访问URL:http://localhost:8080/SpringMVC/rest/kfc/brands/kfc-kampar spring-mvc-json-demo 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!