1. 程式人生 > >第2.1.2章 WEB系統最佳實踐Spring檔案配置之spring-common.xml

第2.1.2章 WEB系統最佳實踐Spring檔案配置之spring-common.xml

spring-common.xml主要是對spring的通用性配置。
注意spring框架在前,springmvc誕生在後,所以下面的配置需要將Controller排除在外.

<context:component-scan base-package="com.dzmsoft">
        <context:exclude-filter type="annotation"
            expression="org.springframework.stereotype.Controller" />
    </context:component-scan
>

Controller配置排除後,需要加上aop的配置

<aop:aspectj-autoproxy proxy-target-class="true" />

如果你還需要使用spring的Async,做非同步呼叫,那麼需要配置

<task:executor id="taskExecutor" pool-size="1-4" queue-capacity="128" />
    <task:annotation-driven executor="taskExecutor"/> 

spring-common.xml總體配置如下

<?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:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:task="http://www.springframework.org/schema/task" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd"
default-lazy-init="false">
<description>Spring公共配置</description> <!-- 使用annotation 自動註冊bean,並檢查@Required,@Autowired的屬性已被注入 --> <context:component-scan base-package="com.dzmsoft"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan> <!-- 定義aspectj --> <aop:aspectj-autoproxy proxy-target-class="true" /> <!-- 引入spring上下文獲取工具類 --> <bean id="SpringContextHolder" class = "com.dzmsoft.framework.base.util.SpringContextHolder"/> <!--開啟註解排程支援 @Async @Scheduled--> <task:executor id="taskExecutor" pool-size="1-4" queue-capacity="128" /> <task:annotation-driven executor="taskExecutor"/> <!--gson配置--> <bean id="gsonBuilder" class="com.google.gson.GsonBuilder"> <property name="dateFormat" value="yyyy-MM-dd HH:mm" /> </bean> <bean id="gson" factory-bean="gsonBuilder" factory-method="create"></bean> </beans>