123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:mvc="http://www.springframework.org/schema/mvc"
- xmlns:context="http://www.springframework.org/schema/context"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
- http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
- <context:component-scan base-package="com.rtrh.core.plugins.**.controller">
- <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
- </context:component-scan>
- <context:component-scan base-package="com.rtrh.core.security">
- <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
- </context:component-scan>
- <context:component-scan base-package="com.rtrh.projects.web" />
- <context:component-scan base-package="com.rtrh.projects.outapi" />
- <mvc:annotation-driven conversion-service="conversionService">
- <mvc:message-converters register-defaults="true">
- <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
- <property name="supportedMediaTypes">
- <list>
- <value>application/json;charset=UTF-8</value>
- </list>
- </property>
- </bean>
- <bean class="org.springframework.http.converter.StringHttpMessageConverter">
- <property name="supportedMediaTypes" value="text/html;charset=UTF-8"/>
- </bean>
- </mvc:message-converters>
- </mvc:annotation-driven>
- <!-- 1,注册ConversionService -->
- <bean id="conversionService"
- class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
- <property name="converters">
- <list>
- <bean class="com.rtrh.core.conver.StringtoLongConverter" />
- <bean class="com.rtrh.core.conver.StringtoDateConver" />
- <bean class="com.rtrh.core.conver.StringtoIntConverter" />
- <!-- <bean class="com.rtrh.core.conver.StringtoBaseEntityConver" /> -->
- </list>
- </property>
- </bean>
- <mvc:default-servlet-handler />
- <mvc:interceptors>
- <mvc:interceptor>
- <mvc:mapping path="/**" />
- <mvc:exclude-mapping path="/html/**" />
- <mvc:exclude-mapping path="/**/*.html" />
- <mvc:exclude-mapping path="/asset/**" />
- <mvc:exclude-mapping path="/common/**" />
- <mvc:exclude-mapping path="/demo/**" />
- <mvc:exclude-mapping path="/errorpage/**" />
- <mvc:exclude-mapping path="/login" />
- <mvc:exclude-mapping path="/register" />
- <mvc:exclude-mapping path="/security/authentication/**" />
- <mvc:exclude-mapping path="/static/file/**" />
- <bean class="com.rtrh.projects.web.security.URLIntercepter" />
- </mvc:interceptor>
- <mvc:interceptor>
- <mvc:mapping path="/asset/**" />
- <bean class="com.rtrh.projects.web.security.OriginAllowIntercepter" />
- </mvc:interceptor>
- <mvc:interceptor>
- <mvc:mapping path="/**" />
- <mvc:exclude-mapping path="/html/**" />
- <mvc:exclude-mapping path="/**/*.html" />
- <mvc:exclude-mapping path="/asset/**" />
- <mvc:exclude-mapping path="/common/**" />
- <mvc:exclude-mapping path="/demo/**" />
- <mvc:exclude-mapping path="/errorpage/**" />
- <mvc:exclude-mapping path="/login" />
- <mvc:exclude-mapping path="/subject/subInfo/download" />
- <mvc:exclude-mapping path="/register" />
- <mvc:exclude-mapping path="/VCodeHandler" />
- <mvc:exclude-mapping path="/security/authentication/**" />
- <bean class="com.rtrh.core.spring.intercepter.MVCRequestInterceptor" />
- </mvc:interceptor>
- <mvc:interceptor>
- <mvc:mapping path="/outApi/**"/>
- <bean class="com.rtrh.projects.outapi.base.ApiTokenAuthInterceptor" />
- </mvc:interceptor>
- </mvc:interceptors>
- <bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
- <property name="favorPathExtension" value="true"/>
- <property name= "ignoreAcceptHeader" value= "true"/>
- <property name= "favorParameter" value= "true" />
- <property name= "parameterName" value= "format"/>
- <property name="mediaTypes" >
- <value>
- json=application/json
- xml=application/xml
- html=text/html
- </value>
- </property>
- <property name= "defaultContentType" value= "text/html" />
- </bean>
- <bean class= "org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
- <property name="order" value="0"/>
- <property name= "contentNegotiationManager" ref= "contentNegotiationManager"/>
- <property name="viewResolvers">
- <list>
- <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
- <property name="contentType" value="text/html; charset=UTF-8"/>
- </bean>
- </list>
- </property>
- <property name= "defaultViews">
- <list>
- <bean class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" />
- </list>
- </property>
- </bean>
- <!-- 上传文件 -->
- <bean id="multipartResolver"
- class="com.rtrh.projects.web.base.CommonsMultipartResolverFactory" />
- <!-- 统一异常处理 -->
- <bean id="handlerExceptionResolver" class="com.rtrh.projects.web.base.MyHandlerMethodExceptionResolver">
- <property name="defaultErrorView" value="error/500"/> <!--错误页面-->
- <property name="messageConverters">
- <list>
- <bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter" />
- <!-- JSON转换器无需设置mediaType,由外部客户端调用时,手动设置相关mediaType -->
- <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
- <property name="objectMapper">
- <bean class="com.fasterxml.jackson.databind.ObjectMapper">
- <property name="dateFormat">
- <bean class="java.text.SimpleDateFormat">
- <constructor-arg type="java.lang.String" value="yyyy-MM-dd HH:mm:ss" />
- </bean>
- </property>
- </bean>
- </property>
- </bean>
- </list>
- </property>
- </bean>
- <!-- <bean id="handlerAdapter" class="org.springframework.web.servlet.mvc.annotation.RestHandlerAdapter"></bean> -->
- <!-- 保证实现了Shiro内部lifecycle函数的bean执行 -->
- <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor"/>
- <!-- AOP式方法级权限检查 -->
- <bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" depends-on="lifecycleBeanPostProcessor">
- <property name="proxyTargetClass" value="true" />
- </bean>
- <bean class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor">
- <property name="securityManager" ref="securityManager"/>
- </bean>
- </beans>
|