1. maven 配置
<!-- Spring Json -->
<dependency>
<groupId>net.sf.spring-json</groupId>
<artifactId>spring-json</artifactId>
<version>1.3.1</version>
<exclusions>
<exclusion>
<artifactId>sojo-optional</artifactId>
<groupId>net.sf.sojo</groupId>
</exclusion>
<exclusion>
<artifactId>spring-mock</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>servlet-api</artifactId>
<groupId>javax.servlet</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>net.sf.sojo</groupId>
<artifactId>sojo</artifactId>
<version>1.0.5</version>
<exclusions>
<exclusion>
<artifactId>commons-attributes-api</artifactId>
<groupId>commons-attributes</groupId>
</exclusion>
</exclusions>
</dependency>
2. 我们要在WEB-INF下面添加views.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:util="http://www.springframework.org/schema/util" xsi:schemaLocation= "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd"> <bean name="jsonView" class="net.sf.json.spring.web.servlet.view.JsonView" /> </beans>
<!-- json --> <bean id="xmlFileViewResolver" class="org.springframework.web.servlet.view.XmlViewResolver"> <property name="location"> <value>/WEB-INF/views.xml</value> </property> <property name="order"> <value>1</value> </property> </bean>
3.在ModelAndView 的后面,我们只要添加
return new ModelAndView("jsonView", modelMap);
就好了
提供一个简单的Sample
public ModelAndView getColumnsJson(HttpServletRequest request, HttpServletResponse response) throws Exception { Map<String,Object> modelMap = new HashMap<String,Object>(2); modelMap.put("rows", service.generateColumns()); return new ModelAndView("jsonView", modelMap); }