關於tomcat啓動讀取數據庫數據作爲緩存數據


我的項目採用的是SSH,

1,使用quartz 配置定時器,

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <list>
            <ref local="commonTimeCatchServiceTrigger" />
        </list>
    </property>
</bean>

<bean id="commonTimeCatchServiceTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
    <property name="jobDetail" ref="commonTimeCatchServiceDetail" />
    <property name="startDelay" value="0" />  <!-- 調度器啓動與第一次執行任務之間的間隔 -->
    <property name="repeatInterval" value="360000" /> <!-- 間隔時間 -->
</bean>

<bean id="commonTimeCatchServiceDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="commonTimeCatchService" />
    <property name="targetMethod" value="cache" />  <!-- 執行方法 -->
    <property name="concurrent" value="false" /> <!-- 不允許併發 -->
</bean>

<bean id="commonTimeCatchService" class="com.xxxx.xxx.catchdata.CommonTimeCatchService">
    <property name="baseHibernate" ref="baseHibernate" />   <!-- 數據源 -->
    <property name="carHibernate" ref="carHibernate" />   <!-- 數據源 -->    
    <property name="memberHibernate" ref="memberHibernate" />   <!-- 數據源  -->
</bean>

服務器啓動後查詢數據,添加到static final 中就可以實現緩存機制


也可以使用這樣的方法:在web.xml裏面配置一個load-on-startup的servlet,然後在裏面做你想做的那些事情吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章