1.对于.property的引入
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath*:/tiny.properties</value>
</list>
</property>
</bean>
2.Spring公共配置,即扫描注入的内容
<!-- 使用annotation 自动注册bean, 并保证@Required、@Autowired的属性被注入 -->
<context:component-scan base-package="com.cst.tiny" />
3.数据库的配置
<!-- mysql -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="initialSize" value="20"/>
<property name="minIdle" value="30"/>
<property name="maxActive" value="100"/>
<property name="timeBetweenEvictionRunsMillis" value="60000"/>
<property name="minEvictableIdleTimeMillis" value="300000"/>
<property name="validationQuery" value="SELECT 'x'"/>
<property name="testWhileIdle" value="true"/>
<property name="testOnBorrow" value="false"/>
<property name="testOnReturn" value="false"/>
<property name="removeAbandoned" value="true"/>
<property name="removeAbandonedTimeout" value="1800"/>
<property name="logAbandoned" value="true"/>
<property name="filters" value="stat"/>
</bean>
<bean id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="mapperLocations" value="classpath*:com/cst/tiny/dao/**/mapper/*.xml"/>
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<!--事务模板 -->
<bean id="transactionTemplate" class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="transactionManager" />
<!--ISOLATION_DEFAULT 表示由使用的数据库决定 -->
<property name="isolationLevelName" value="ISOLATION_DEFAULT" />
<property name="propagationBehaviorName" value="PROPAGATION_REQUIRED" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>
<!-- 扫描dao -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactoryBean" />
<property name="basePackage" value="com.cst.tiny.dao.*.mapper"/>
</bean>
4.quartz的配置
<!-- 申领成功,未预约,发短信 -->
<bean id="UnAppointment" class="com.cst.tiny.jobs.UnAppointment" />
<bean id="UnAppointmentTrigger"
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail">
<bean
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="UnAppointment" />
<property name="targetMethod" value="doJob" />
</bean>
</property>
<property name="cronExpression" value="${trigger.unappointment.cron}"></property>
</bean>
5.总配置文件的引入
<description>导入applicationContext文件列表</description>
<import resource="classpath*:spring/applicationContext-core.xml" />
<import resource="classpath*:spring/applicationContext-dao.xml" />
<import resource="classpath*:spring/applicationContext-quartz.xml" />
<import resource="classpath*:spring/applicationContext-config.xml" />
6.mongodb的配置
<mongo:mongo host="${mongo_host}" port="${mongo_port}" />
<!--
<mongo:mongo host="11.11.11.13" port="27017" replica-set="11.11.11.13:27018,11.11.11.11:27019">
<mongo:options connections-per-host="8"
threads-allowed-to-block-for-connection-multiplier="4"
connect-timeout="3000"
max-wait-time="3000"
auto-connect-retry="true"
socket-keep-alive="true"
socket-timeout="3000"
slave-ok="true"
write-number="1"
write-timeout="0"
write-fsync="true">
</mongo:options>
</mongo:mongo>
-->
<mongo:db-factory dbname="app_crawler" mongo-ref="mongo" />
<beans:bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<beans:constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
</beans:bean>
<context:component-scan base-package="com.cst.crawler.dao.mongodb" />
<mongo:mapping-converter base-package="com.cst.crawler.pojo.model" />