<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/aop 
       http://www.springframework.org/schema/aop/spring-aop.xsd
       http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd">


	<context:annotation-config />
	<bean id="placeholder" class="com.lyms.spring.PropertiesUtil">
		<property name="locations">
			<list>
				<value>classpath:jdbc.properties</value>
			</list> 
		</property>
	</bean>

	<!-- 扫描控制器 禁用use-default-filters 不重复扫描@Service,@Repository等..否则将导致事务失效 -->
	<context:component-scan base-package="com.lyms.cm.controller"></context:component-scan>

	<!-- <mvc:default-servlet-handler /> -->

	<!-- 配置静态资源，直接映射到对应的文件夹，DispatcherServlet 不处理 -->
	<mvc:resources mapping="/static/**" location="/WEB-INF/static/" cache-period="31926534">
		<mvc:resource-chain resource-cache="false" auto-registration="false">
			<mvc:resolvers>
	        	<bean class="org.springframework.web.servlet.resource.GzipResourceResolver"/>
	        	<bean class="org.springframework.web.servlet.resource.PathResourceResolver"/>
	        </mvc:resolvers>
        </mvc:resource-chain>
	</mvc:resources>
	<mvc:resources mapping="/error/**" location="/error/" />

	<!-- 定义视图解析器 -->
	<bean id="velocityConfig"
		class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
		<property name="resourceLoaderPath" value="/WEB-INF/views/" />
		<property name="configLocation" value="classpath:velocity.properties" />
	</bean>
	
	<bean id= "viewResolver" class= "org.springframework.web.servlet.view.velocity.VelocityLayoutViewResolver"> 
		<property name="toolboxConfigLocation" value="/WEB-INF/toolbox.xml" />
		<property name="layoutUrl" value="layout/empty.html" /> 
		<property name="suffix" value=".html" />
		<property name="cache" value="false" />
		<property name="contentType" value="text/html;charset=UTF-8" />
		<property name="dateToolAttribute" value="date" /><!--日期函数名称-->
		<property name="numberToolAttribute" value="number" /><!--数字函数名称-->
		<!-- <property name="viewClass" value="com.lyms.velocity.VelocityToolboxViewExt"/> -->
		<property name="exposeSpringMacroHelpers" value="true" />
		<property name="exposeRequestAttributes" value="true" />
		<property name="exposeSessionAttributes" value="true" />
		<property name="redirectContextRelative" value="true" />
		<property name="requestContextAttribute" value="request" />
		<property name="redirectHttp10Compatible" value="true" />
	</bean>

	<bean id="ExceptionHandler" class="com.lyms.spring.exception.ExceptionHandler" />

	<mvc:annotation-driven>
		<!-- 编码转换 -->
		<mvc:message-converters>
			<bean id="fastJsonHttpMessageConverter"
				class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
				<property name="supportedMediaTypes">
					<list>
						<value>application/json;charset=UTF-8</value>
					</list>
				</property>
				<!-- | 这个地方能自己配置一些东西，比如时间的格式化，null输出""等等 | <property name="serializerFeature"></property> 
					| -->
			</bean>
			<bean class="org.springframework.http.converter.StringHttpMessageConverter">
				<property name="supportedMediaTypes">
					<list>
						<value>text/plain;charset=UTF-8</value>
						<value>text/html;charset=UTF-8</value>
						<value>application/json;charset=UTF-8</value>
					</list>
				</property>
			</bean>
		</mvc:message-converters>
	</mvc:annotation-driven>
	
	<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		<property name="defaultEncoding" value="utf-8" />
		<!-- 文件大小最大值 -->
		<property name="maxUploadSize" value="10485760000" />
		<!-- 内存中的最大值 -->
		<property name="maxInMemorySize" value="40960" />
	</bean>
	
	<aop:aspectj-autoproxy/>  
	<bean class = "com.lyms.aop.SysLogAop"/>  
	
	<!-- 配置基础拦截器 -->
	<mvc:interceptors>
        <bean class="com.lyms.spring.interceptor.BaseInterceptor"/>  
    </mvc:interceptors>
    <!--<bean class="com.lyms.web.listener.StartupListener"/>  
    <bean class="com.lyms.context.AppContext"/>  
	
	<import resource="xml/app-*.xml" /> -->
</beans>