cd2443d9c124ca0324b51c71ed005f1ea1835a59.svn-base 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  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.app.international" 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. <!-- 配置FREEMARKER的视图解析器 -->
  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. <!-- 指定更新模版文件的间隔时间,相当于多长时间检测一下是否有必要重新加载模版文件,0 表示每次都重新加载,否则为多少毫秒钟检测一下模版是否更改 -->
  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:default-servlet-handler后,前台handler方法失效问 -->
  69. <mvc:annotation-driven></mvc:annotation-driven>
  70. <!-- 配置MultipartResolver -->
  71. <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  72. <!-- 默认的编码 -->
  73. <property name="defaultEncoding" value="UTF-8"></property>
  74. <!-- 最大上传大小 -->
  75. <property name="maxUploadSize" value="1024000000"></property>
  76. </bean>
  77. <!--避免IE执行AJAX时,返回JSON出现下载文件 -->
  78. <bean id="mappingJacksonHttpMessageConverter"
  79. class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
  80. <property name="supportedMediaTypes">
  81. <list>
  82. <value>text/html; charset=UTF-8</value>
  83. <value>application/json;charset=UTF-8</value>
  84. </list>
  85. </property>
  86. </bean>
  87. <bean
  88. class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
  89. <property name="messageConverters">
  90. <list>
  91. <ref bean="mappingJacksonHttpMessageConverter" />
  92. </list>
  93. </property>
  94. </bean>
  95. <!-- 定义国际化消息-->
  96. <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
  97. <!-- 其中basename用来指定properties文件的通用名
  98. 如实例中的messages_en.properties,messages_ja.properties通用名都是messages
  99. -->
  100. <property name="basename" value="messages"/>
  101. <property name="useCodeAsDefaultMessage" value="true" />
  102. </bean>
  103. <!-- 获取本地 -->
  104. <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver"/>
  105. </beans>