iamberry-wechat-web-springmvc.xml 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
  4. xmlns:mvc="http://www.springframework.org/schema/mvc"
  5. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
  6. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
  7. http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">
  8. <!-- 配置自定扫描的包,仅handler和Advice -->
  9. <context:component-scan base-package="com.iamberry" use-default-filters="false">
  10. <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />
  11. <context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice" />
  12. </context:component-scan>
  13. <!-- 配置JSP视图解析器: 如何把 handler 方法返回值解析为实际的物理视图 -->
  14. <bean id="viewResolverJsp" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  15. <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
  16. <property name="contentType" value="text/html; charset=UTF-8"/>
  17. <property name="prefix" value="/WEB-INF/views/"></property>
  18. <property name="suffix" value=".jsp"></property>
  19. <property name="order" value="1"/>
  20. </bean>
  21. <!-- 该异常是SpringMVC在检查上传的文件信息时抛出来的,而且此时还没有进入到Controller方法中 遇到MaxUploadSizeExceededException异常时,自动跳转到/WEB-INF/views/msg/ploadToSize.jsp页面 -->
  22. <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
  23. <property name="exceptionMappings">
  24. <props>
  25. <prop key="org.springframework.web.multipart.MaxUploadSizeExceededException">/msg/ploadToSize</prop>
  26. </props>
  27. </property>
  28. </bean>
  29. <!-- 解决静态资源,提供两种方法 -->
  30. <mvc:default-servlet-handler/>
  31. <mvc:resources location="/common/" mapping="/common/**" />
  32. <!-- 解决配置mvc:default-servlet-handler后,前台handler方法失效问 -->
  33. <mvc:annotation-driven>
  34. <!-- 配置@ResponseBody后,如果返回为Entity,有null的数据返回,增大返回数据大小 -->
  35. <mvc:message-converters>
  36. <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
  37. <property name="objectMapper">
  38. <bean class="com.fasterxml.jackson.databind.ObjectMapper">
  39. <!-- 为null字段时不显示 -->
  40. <property name="serializationInclusion">
  41. <value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
  42. </property>
  43. </bean>
  44. </property>
  45. </bean>
  46. </mvc:message-converters>
  47. </mvc:annotation-driven>
  48. <!-- 配置MultipartResolver -->
  49. <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  50. <!-- 默认的编码 -->
  51. <property name="defaultEncoding" value="UTF-8"></property>
  52. <!-- 最大上传大小 -->
  53. <property name="maxUploadSize" value="1024000"></property>
  54. </bean>
  55. <!--避免IE执行AJAX时,返回JSON出现下载文件 -->
  56. <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
  57. <property name="supportedMediaTypes">
  58. <list>
  59. <value>text/html; charset=UTF-8</value>
  60. <value>application/json;charset=UTF-8</value>
  61. </list>
  62. </property>
  63. </bean>
  64. <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
  65. <property name="messageConverters">
  66. <list>
  67. <ref bean="mappingJacksonHttpMessageConverter" />
  68. </list>
  69. </property>
  70. </bean>
  71. </beans>