SpringMVC返回XML和JSON

一 配置

1 Spring3.0

2 Maven4.0

3 Java7


二 返回XML

1 在Controller的返回函数中,使用@ResponseBody注解。该注解的含义,是使Spring将函数的返回数据(String、JSON、XML对象等),直接写回到Response中返回,而不是默认情况下的返回一个页面。


2 在viewspace-servlet.xml文件中,增加


这条配置使得@ResponseBody注解生效。


3 在@RequestMapping标签中,使用配置项“produces={"application/xml; charset-UTF-8"}”,选择使用XML数据转换器。


4 在需要返回的XML对象对应的类文件中,增加@XMLRootElement和@XMLElement这些JAXB标签,这些标签规定了Java对象和XML的对应关系。例如:


@XmlRootElement(name = "coffee")
public class Coffee {
	String name;
	int quanlity;

	public String getName() {
		return name;
	}
	@XmlElement
	public void setName(String name) {
		this.name = name;
	}
	public int getQuanlity() {
		return quanlity;
	}
	@XmlElement
	public void setQuanlity(int quanlity) {
		this.quanlity = quanlity;
	}
	public Coffee(String name, int quanlity) {
		this.name = name;
		this.quanlity = quanlity;
	}
	public Coffee() {}
}




三 返回JSON

1 在Controller的返回函数中,使用@ResponseBody注解。该注解的含义,是使Spring将函数的返回数据(String、JSON、XML对象等),直接写回到Response中返回,而不是默认情况下的返回一个页面。


2 在viewspace-servlet.xml文件中,增加


这条配置使得@ResponseBody注解生效。


3 在@RequestMapping标签中,使用配置项“produces={"application/json; charset-UTF-8"}”,选择使用json数据转换器。


4 在pom.xml文件中,增加json数据转换器依赖的jar包


		
			org.codehaus.jackson
			jackson-mapper-asl
			1.9.4
		


		
			com.fasterxml.jackson.core
			jackson-databind
			2.8.7
		
		
			com.fasterxml.jackson.core
			jackson-core
			2.8.9
		



你可能感兴趣的:(SpringMVC返回XML和JSON)