Sping3 MVC JSON 例子


1、引入下面两个jar包,我用的是1.8.10,好像1.4.2版本以上都可以,下载地址:http://wiki.fasterxml.com/JacksonDownload

jackson-core-asl-1.8.10.jar

jackson-mapper-asl-1.8.10.jar

同时引入Sping 本身的jar包:

org.springframework.asm-3.1.1.RELEASE.jar
org.springframework.beans-3.1.1.RELEASE.jar
org.springframework.context-3.1.1.RELEASE.jar
org.springframework.core-3.1.1.RELEASE.jar
org.springframework.expression-3.1.1.RELEASE.jar
org.springframework.web-3.1.1.RELEASE.jar

2、Sping配置文件

web.xml

  1. <servlet>
  2. <servlet-name>dispatchServlet</servlet-name>
  3. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  4. <init-param>
  5. <param-name>contextConfigLocation</param-name>
  6. <param-value>/WEB-INF/servlet-config.xml</param-value>
  7. </init-param>
  8. <load-on-startup>1</load-on-startup>
  9. </servlet>
  10. <servlet-mapping>
  11. <servlet-name>dispatchServlet</servlet-name>
  12. <url-pattern>*.do</url-pattern>
  13. </servlet-mapping>

servlet-config.xml:

  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <beansxmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:p="http://www.springframework.org/schema/p"
  5. xmlns:context="http://www.springframework.org/schema/context"
  6. xmlns:tx="http://www.springframework.org/schema/tx"
  7. xmlns:mvc="http://www.springframework.org/schema/mvc"
  8. xsi:schemaLocation="http://www.springframework.org/schema/beans
  9. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
  10. http://www.springframework.org/schema/context
  11. http://www.springframework.org/schema/context/spring-context-3.0.xsd
  12. http://www.springframework.org/schema/mvc
  13. http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
  14. <!-- 自动扫描bean,把作了注解的类转换为bean -->
  15. <context:component-scanbase-package="com.report.controller"/>
  16. <!-- 默认的注解映射的支持 -->
  17. <mvc:annotation-driven/>
  18. <!-- 支持JSON数据格式 -->
  19. <beanclass="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>
  20. <beanclass="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
  21. <propertyname="messageConverters">
  22. <list>
  23. <beanclass="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
  24. <propertyname="supportedMediaTypes">
  25. <list>
  26. <value>text/html;charset=UTF-8</value>
  27. </list>
  28. </property>
  29. </bean>
  30. </list>
  31. </property>
  32. </bean>
  33. <!-- 声明viewResolver -->
  34. <beanid="viewResolver"class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  35. <propertyname="prefix"value="/"/>
  36. <propertyname="suffix"value=".html"/>
  37. </bean>
  38. </beans>

接着,我们再定义一个java类:

  1. import java.util.HashMap;
  2. import java.util.Map;
  3. import org.springframework.stereotype.Controller;
  4. import org.springframework.ui.Model;
  5. import org.springframework.web.bind.annotation.RequestMapping;
  6. import org.springframework.web.bind.annotation.RequestMethod;
  7. import org.springframework.web.bind.annotation.ResponseBody;
  8. @Controller
  9. publicclass KeywordInfoController {
  10. @RequestMapping(value="getKeywordExportPVData.do", method=RequestMethod.POST)
  11. @ResponseBody
  12. public Object getKeywordExportPVInfo(){
  13. String s = "hellowold";
  14. return s;
  15. }
  16. }

然后我们在页面调用url即可。

相关内容