iamberry-wechat-web-springmvc.xml 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  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. <!-- 该异常是SpringMVC在检查上传的文件信息时抛出来的,而且此时还没有进入到Controller方法中 遇到MaxUploadSizeExceededException异常时,自动跳转到/WEB-INF/views/msg/ploadToSize.jsp页面 -->
  9. <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
  10. <property name="exceptionMappings">
  11. <props>
  12. <prop key="org.springframework.web.multipart.MaxUploadSizeExceededException">/msg/ploadToSize</prop>
  13. </props>
  14. </property>
  15. </bean>
  16. <!-- 配置自定扫描的包,仅handler和Advice -->
  17. <context:component-scan base-package="com.iamberry" use-default-filters="false">
  18. <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />
  19. <context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice" />
  20. </context:component-scan>
  21. <!-- 配置freeMarker视图解析器 -->
  22. <!--<bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
  23. <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>
  24. <property name="contentType" value="text/html; charset=UTF-8"/>
  25. <property name="exposeRequestAttributes" value="true" />
  26. <property name="exposeSessionAttributes" value="true" />
  27. <property name="exposeSpringMacroHelpers" value="true" />
  28. <property name="requestContextAttribute" value="request"/>
  29. <property name="cache" value="true" />
  30. <property name="suffix" value=".ftl" />
  31. <property name="order" value="0"/>
  32. </bean>-->
  33. <!--&lt;!&ndash; 配置FREEMARKER的视图解析器 &ndash;&gt;
  34. <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
  35. <property name="templateLoaderPath" value="/WEB-INF/views/"/>
  36. <property name="freemarkerVariables">
  37. <map>
  38. <entry key="xml_escape" value-ref="fmXmlEscape" />
  39. </map>
  40. </property>
  41. <property name="defaultEncoding" value="UTF-8"/>
  42. <property name="freemarkerSettings">
  43. <props>
  44. &lt;!&ndash; 指定更新模版文件的间隔时间,相当于多长时间检测一下是否有必要重新加载模版文件,0 表示每次都重新加载,否则为多少毫秒钟检测一下模版是否更改 &ndash;&gt;
  45. <prop key="template_update_delay">3600</prop>
  46. <prop key="locale">zh_CN</prop>
  47. <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
  48. <prop key="date_format">yyyy-MM-dd</prop>
  49. <prop key="number_format">#.##</prop>
  50. </props>
  51. </property>
  52. </bean>
  53. <bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>-->
  54. <!-- 配置JSP视图解析器: 如何把 handler 方法返回值解析为实际的物理视图 -->
  55. <bean id="viewResolverJsp" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  56. <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
  57. <property name="contentType" value="text/html; charset=UTF-8"/>
  58. <property name="prefix" value="/WEB-INF/views/"></property>
  59. <property name="suffix" value=".jsp"></property>
  60. <property name="order" value="1"/>
  61. </bean>
  62. <!-- 解决静态资源,提供两种方法 -->
  63. <mvc:default-servlet-handler/>
  64. <mvc:resources location="/common/css/" mapping="/common/css/**" />
  65. <mvc:resources location="/common/images/" mapping="/common/images/**" />
  66. <mvc:resources location="/common/js/" mapping="/common/js/**" />
  67. <mvc:resources location="/common/other/" mapping="/common/other/**" />
  68. <!--<mvc:resources location="/common/" mapping="/common/**" />
  69. <mvc:resources location="/css/" mapping="/css/**" />
  70. <mvc:resources location="/image/" mapping="/image/**" />
  71. <mvc:resources location="/ueditor/" mapping="/ueditor/**" /> -->
  72. <!-- 解决配置mvc:default-servlet-handler后,前台handler方法失效问 -->
  73. <mvc:annotation-driven>
  74. <!-- 配置@ResponseBody后,如果返回为Entity,有null的数据返回,增大返回数据大小 -->
  75. <mvc:message-converters>
  76. <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
  77. <property name="objectMapper">
  78. <bean class="com.fasterxml.jackson.databind.ObjectMapper">
  79. <!-- 为null字段时不显示 -->
  80. <property name="serializationInclusion">
  81. <value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
  82. </property>
  83. </bean>
  84. </property>
  85. </bean>
  86. </mvc:message-converters>
  87. </mvc:annotation-driven>
  88. <!-- 配置MultipartResolver -->
  89. <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  90. <!-- 默认的编码 -->
  91. <property name="defaultEncoding" value="UTF-8"></property>
  92. <!-- 最大上传大小 -->
  93. <property name="maxUploadSize" value="1024000000"></property>
  94. </bean>
  95. <!--避免IE执行AJAX时,返回JSON出现下载文件 -->
  96. <bean id="mappingJacksonHttpMessageConverter"
  97. class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
  98. <property name="supportedMediaTypes">
  99. <list>
  100. <value>text/html; charset=UTF-8</value>
  101. <value>application/json;charset=UTF-8</value>
  102. </list>
  103. </property>
  104. </bean>
  105. <bean
  106. class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
  107. <property name="messageConverters">
  108. <list>
  109. <ref bean="mappingJacksonHttpMessageConverter" />
  110. </list>
  111. </property>
  112. </bean>
  113. </beans>