1.在spring的配置文档中添加以下信息:
xmlns:task="http://www.springframework.org/schema/task"
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-3.0.xsd
<task:annotation-driven/>
<context:annotation-config/>
<context:component-scan base-package="*" />
2.编写操作方法,并为其配置时间参数
package com.zkyt.service.dataCommonStep;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import com.zkyt.dao.FxyDao;
import com.zkyt.dao.JdbcDao;
import com.zkyt.entity.TBasEnterprise;
import com.zkyt.service.dbUtil.DBUtil;
@Component
public class DataCommit {
@Autowired
private JdbcDao jdbcDao;//连接省厅服务器
@Autowired
private FxyDao fxyDao;//连接各市县服务器
@Scheduled(cron="0 30 01 * * ?") //每天的1:30分执行此方法
public void startCommitData() throws Exception
{
List<TBasEnterprise> list = new ArrayList<TBasEnterprise>();
String cond = "where assessstate=2 and iscommit=0";
//获取所有未提交的数据
list = fxyDao.getTBasEnterprisesByCondition(cond);
for(TBasEnterprise te:list)
{
try {
jdbcDao.addOrUpdateBySql(te);
String enterLink = te.getEnterlink();
//根据enterlink获得子系统数据,并进行提交
//连接各市县服务器 fxyDao.getTBasRiskcells(enterLink);
//jdbcDao.addOrUpdate(TBasRiskcell TBasRiskCell);
//提交完毕后,再将数据库连接commit;
DBUtil.commit();
DBUtil.closeConncetion();
//数据提交完毕后,将此企业的字段iscommit 设为1
te.setIscommit(1);
fxyDao.addOrUpdate(te);
} catch (Exception e) {
// 若出现异常,则rollback()连接
DBUtil.rollback();
DBUtil.closeConncetion();
}
}
}
}