在本示例中,我们将向您展示如何将对象转换成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的依赖:
xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
xsi:schemalocation="http://maven.apache.org/pom/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
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](https://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注解。
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
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">
5、示例结果
访问url:http://localhost:8080/springmvc/rest/kfc/brands/kfc-kampar
spring-mvc-json-demo
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!