spring 定時任務調用存儲過程配置示例
SSH框架中,spring xml定時調用存儲過程定時任務配置示例及代碼主要流程示例,簡單版
</div>
主要代碼示例
<!-- 刷新EHR用戶角色 -->
<bean id="synRoleId"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="webService" />
</property>
<property name="targetMethod">
<value>updateRoleId</value>
</property>
<property name="concurrent" value="false"/>
</bean>
<bean id="synRoleIdTrigger"
class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="synRoleId" />
</property>
<property name="cronExpression">
<value>0 00 05 ? * *</value>
</property>
</bean>
<!-- 啟動job -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="synRoleIdTrigger" />
<!-- 配置多個定時任務-->
</list>
</property>
<property name="autoStartup" value="true"/>
</bean>
接口類中:
public void snycUpdateRoleId();
接口實現類中:
@Override
public void updateRoleId() {
log.info("CALC.SP_UPDATE_ROLE_ID..."+new Date());
this.syUserDAO.updateBySQL("{call CALC.SP_UPDATE_ROLE_ID()}");
}
hibernate調用方法:
public Integer updateBySQL(final String sql, final Object... paramsValue) {
return (Integer)getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException, SQLException {
Query query = session.createSQLQuery(sql);
if(paramsValue!=null){
for (int i = 0; i < paramsValue.length; i++) {
query.setParameter(i, paramsValue[i]);
}
}
return query.executeUpdate();
}
});
} 本文由用戶 admin 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!