spring-context.xml
10.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
<?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:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc"
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:util="http://www.springframework.org/schema/util" xmlns:task="http://www.springframework.org/schema/task"
xmlns:mvc="http://www.springframework.org/schema/mvc" 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/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.0.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.0.xsd"
default-lazy-init="true">
<description>Spring Configuration</description>
<!-- 引入同文件夹下的redis属性配置文件 -->
<import resource="redis-context.xml"/>
<!-- 激活@Controller模式 -->
<!-- <mvc:annotation-driven/> -->
<!-- 对包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 需要更改 -->
<context:component-scan base-package="com.pudp.bae.*" />
<!--
<bean id="memberService" class="com.pudp.bae.service.MemberService"/>
-->
<!-- 加载配置属性文件 -->
<context:property-placeholder ignore-unresolvable="true" location="classpath:jeesite.properties" />
<!-- 加载应用属性实例,可通过 @Value("#{APP_PROP['jdbc.driver']}") String jdbcDriver 方式引用 -->
<util:properties id="APP_PROP" location="classpath:jeesite.properties" local-override="true"/>
<!-- 使用Annotation自动注册Bean,解决事物失效问题:在主容器中不扫描@Controller注解,在SpringMvc中只扫描@Controller注解。 -->
<context:component-scan base-package="com.thinkgem.jeesite"><!-- base-package 如果多个,用“,”分隔 -->
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>
<!-- MyBatis begin -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="typeAliasesPackage" value="com.thinkgem.jeesite"/>
<property name="typeAliasesSuperType" value="com.thinkgem.jeesite.common.persistence.BaseEntity"/>
<property name="mapperLocations" value="classpath:/mappings/**/*.xml"/>
<property name="configLocation" value="classpath:/mybatis-config.xml"></property>
</bean>
<!-- 扫描basePackage下所有以@MyBatisDao注解的接口 -->
<bean id="mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
<property name="basePackage" value="com.thinkgem.jeesite"/>
<property name="annotationClass" value="com.thinkgem.jeesite.common.persistence.annotation.MyBatisDao"/>
</bean>
<!-- 定义事务 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory" />
</bean>
<!-- 配置 Annotation 驱动,扫描@Transactional注解的类定义事务 -->
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>
<!-- MyBatis end -->
<!-- 配置 JSR303 Bean Validator 定义 -->
<bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />
<!-- 缓存配置 -->
<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<property name="configLocation" value="classpath:${ehcache.configFile}" />
</bean>
<!-- 计划任务配置,用 @Service @Lazy(false)标注类,用@Scheduled(cron = "0 0 2 * * ?")标注方法
<task:executor id="executor" pool-size="10"/> <task:scheduler id="scheduler" pool-size="10"/>
<task:annotation-driven scheduler="scheduler" executor="executor" proxy-target-class="true"/>
-->
<!-- 数据源配置, 使用 BoneCP 数据库连接池 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<!-- 数据源驱动类可不写,Druid默认会自动根据URL识别DriverClass -->
<property name="driverClassName" value="${jdbc.driver}" />
<!-- 基本属性 url、user、password -->
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="${jdbc.pool.init}" />
<property name="minIdle" value="${jdbc.pool.minIdle}" />
<property name="maxActive" value="${jdbc.pool.maxActive}" />
<!-- 配置获取连接等待超时的时间 -->
<property name="maxWait" value="60000" />
<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000" />
<property name="validationQuery" value="${jdbc.testSql}" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<!-- 打开PSCache,并且指定每个连接上PSCache的大小(Oracle使用)
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize" value="20" /> -->
<!-- 配置监控统计拦截的filters -->
<property name="filters" value="stat" />
</bean>
<!-- 数据源配置, 使用应用服务器的数据库连接池
<jee:jndi-lookup id="dataSource" jndi-name="java:comp/env/jdbc/jeesite" />-->
<!-- 数据源配置, 不使用连接池
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>-->
<!-- <task:annotation-driven /> 定时器开关 -->
<!-- 基于xml注解实现的定时配置 start -->
<bean id="mainTask" class="com.thinkgem.jeesite.modules.reg.web.bus.CommitLog"></bean>
<!--每天凌晨一点执行 (0 0 1 * * *)-->
<!--这里表示的是每隔五秒(*/5 * * * * ?)做测试用 执行一次 如果有需要在下面依次添加task就可以 -->
<task:scheduled-tasks>
<task:scheduled ref="mainTask" method="autoCommitLog" cron="0 40 23 * * *" />
</task:scheduled-tasks>
<!-- <task:scheduled-tasks> -->
<!--这里表示的是每隔五秒(*/5 * * * * ?)做测试用 执行一次 如果有需要在下面依次添加task就可以-->
<!-- <task:scheduled ref="mySchedulerXml" method="acceptReissue" cron="*/30 * * * * ?" /> 每隔一个小时执行 (0 0 0/1 * * ?) -->
<!-- </task:scheduled-tasks> -->
<!-- 自动扫描的包名 -->
<context:component-scan base-package="com.thinkgem.jeesite.modules.reg.web.bus" />
<!-- 基于xml注解实现的定时配置 end -->
<!-- 定时请求法院查询信息 7点到20点 一个小时执行一次 -->
<!-- <bean id="FayuanQQ" class="com.thinkgem.jeesite.modules.reg.web.searchinfo.SRegBusCxxxController"></bean> -->
<!-- <task:scheduled-tasks> -->
<!-- <task:scheduled ref="FayuanQQ" method="getQueryFayuan" initial-delay="3600000" fixed-delay="3600000" /> -->
<!-- <task:scheduled ref="FayuanQQ" method="getQueryFayuan" cron="0 0/60 19-20 * * *" /> -->
<!-- </task:scheduled-tasks> -->
<!-- <context:component-scan base-package="com.thinkgem.jeesite.modules.reg.web.searchinfo" /> -->
<!-- -->
<!-- 定时短信发送信息 -->
<!-- <bean id="duanxinQQ" class="com.thinkgem.jeesite.modules.reg.web.bus.SRegBusFzdxController"></bean> -->
<!-- <task:scheduled-tasks> -->
<!-- <task:scheduled ref="duanxinQQ" method="sendDuanxin" cron="0 0 13 * * *" /> -->
<!-- </task:scheduled-tasks> -->
<!-- <context:component-scan base-package="com.thinkgem.jeesite.modules.reg.web.bus" /> -->
<!-- -->
<!-- 定时执行redis缓存同步 -->
<!-- <bean id="syncRedis" class="com.thinkgem.jeesite.modules.reg.web.base.DmlRecordsController"></bean>
<task:scheduled-tasks>
<task:scheduled ref="syncRedis" method="selRedis" cron="0 30 23 * * *" />
</task:scheduled-tasks>
<context:component-scan base-package="com.thinkgem.jeesite.modules.reg.web.base" /> -->
<!-- 定时执行汇总复核 -->
<!-- <bean id="fhDmlRec" class="com.thinkgem.jeesite.modules.reg.web.base.DmlRecordsController"></bean>
<task:scheduled-tasks>
<task:scheduled ref="fhDmlRec" method="pushDmlRecService" cron="0 30 23 * * *" />
</task:scheduled-tasks>
<context:component-scan base-package="com.thinkgem.jeesite.modules.reg.web.base" /> -->
<!-- 定时执行权籍同步 -->
<!--<bean id="titleRec" class="com.thinkgem.jeesite.modules.title.web.TitleController"></bean>
<task:scheduled-tasks>
<task:scheduled ref="titleRec" method="synZdjbxx" cron="*/30 * * * * ?" />
</task:scheduled-tasks> -->
</beans>