- 代码实现:
Service接口类实现IOra20796DemoService .java*
package wht.ora20796.service;
public interface IOra20796DemoService extends IBaseService<Ora20796Demo>, ProxySelf<IOra20796DemoService>{
List<Ora20796Demo> selectUserById(IRequest request, Ora20796Demo dto, int page, int pageSize);
/**定时任务 */
void updateRandomName(String prefix,Long id);
}
Service实现类实现IOra20796DemoService .java*
package wht.ora20796.service.impl;
@Service
@Transactional(rollbackFor = Exception.class)
public class Ora20796DemoServiceImpl extends BaseServiceImpl<Ora20796Demo> implements IOra20796DemoService {
@Autowired
private Ora20796DemoMapper ora20796DemoMapper;//自动装配机制
@Test
@Override
public List<Ora20796Demo> selectUserById(IRequest request, Ora20796Demo dto, int page, int pageSize) {
PageHelper.startPage(page, pageSize);
return ora20796DemoMapper.selectUserByOrder(dto);
}
/**
* 定时任务,定时更新学生为id的学生姓名
* @param prefix
* @param id
*/
@Override
public void updateRandomName(String prefix, Long id) {
Ora20796Demo criteria = new Ora20796Demo();
criteria.setId(id);
Ora20796Demo ora20796Demo = ora20796DemoMapper.selectOne(criteria);
Random random = new Random();
ora20796Demo.setName(prefix + random.nextInt());
ora20796DemoMapper.updateByPrimaryKey(ora20796Demo);
}
}
Ora20796DemoJob .java
package wht.ora20796.job;
import com.hand.hap.job.AbstractJob;
import org.quartz.JobExecutionContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import wht.ora20796.service.IOra20796DemoService;
public class Ora20796DemoJob extends AbstractJob {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired
private IOra20796DemoService demoService;
@Override
public void safeExecute(JobExecutionContext context) throws Exception {
//获取job参数(这个参数是在页面新建任务的时候定义的
String prefix = context.getMergedJobDataMap().getString("PREFIX");
if (logger.isInfoEnabled()) {
logger.info("===>Param PREFIX is " + prefix);
}
//核心逻辑处理
demoService.updateRandomName(prefix, 19L);
setExecutionSummary("Got param " + prefix);
}
@Override
public boolean isRefireImmediatelyWhenException() {
return false;
}
}
页面新建任务:
查看任务执行情况: