求String quartz ,别跟我说什么baidu,google上去找,谁给我例子,分就全是你的!谢谢 !!!
解决方案 »
- 图片上传页面不能及时更新,求解
- js文件引用问题
- 框架怎么学?
- 菜鸟中的菜鸟的问题 在Dreamweaver 中 按 "提交" 按钮 怎样设置 能够提交表单 请高后帮帮俺
- 各位大哥,jsp网站登陆问题请教?
- <%=request.getContextPath%>用jsp2.0标准表达式怎么写
- 如何在Tapestry5中使用JFreeChart来动态显示图片?
- 急急!!org.apache.crimson.*包去哪下载??急用啊 !
- 关于SPRING的注解式事务处理
- 请问如何用jsp向MS SQL Server数据库里插入图象
- Today you do people don't do,tomorrow you do people can't do!
- 请教各位一个jasperReport的打印问题。
我给个例子,给你,很容易懂得……simpleTrigger和CronTrigger,对于更具体得调度采用后者。所以我使用得是后者触发器。可以具体到某天某时出发事件发生。
package p1;import java.net.URL;
import java.util.Calendar;
import java.util.Date;import javax.xml.namespace.QName;import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.quartz.CronExpression;
import org.quartz.CronTrigger;
import org.quartz.Job;
import org.quartz.JobDetail;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SchedulerFactory;
import org.quartz.SimpleTrigger;
import org.quartz.impl.StdSchedulerFactory;public class ObjectClientTest implements Job{
/*
* 定时调用方法
*/
static OrderBean order=new OrderBean();
static OrderBean ob=new OrderBean();
static Call call= null;
static String targetPoint="http://localhost:8080/releaseByAxis/services/ProcessObject";
static Service service=new Service();
public void task() throws SchedulerException
{
/*-------------------SimpleTrigger调度----------------*/
//通过SchedulerFactory来获取一个调度器
// SchedulerFactory schedulerFactory = new StdSchedulerFactory();
// Scheduler scheduler = schedulerFactory.getScheduler();
// //引进作业程序
// JobDetail jobDetail =
// new JobDetail("jobDetail-s1","jobDetailGroup-s1", ObjectClientTest.class);
// //new一个触发器
// SimpleTrigger simpleTrigger =
// new SimpleTrigger("simpleTrigger", "triggerGroup-s1");
// //设置作业启动时间
// long ctime = System.currentTimeMillis();
// simpleTrigger.setStartTime(new Date(ctime));
// //设置作业执行间隔,以毫秒为单位
// Date now=new Date();
// Calendar c=java.util.Calendar.getInstance();
// c.setTime(now);
// simpleTrigger.setRepeatInterval(10000);
// //设置作业执行次数
// simpleTrigger.setRepeatCount(10);
// //设置作业执行优先级默认为5
// //simpleTrigger.setPriority(10);
// //作业和触发器设置到调度器中
// scheduler.scheduleJob(jobDetail, simpleTrigger);
// //启动调度器
// scheduler.start();
/*-------------------CronTrigger调度----------------*/
//CronTrigger 支持比 SimpleTrigger 更具体的调度,而且也不是很复杂。
//基于 cron 表达式,CronTrigger 支持类似日历的重复间隔,而不是单一的时间间隔 —— 这相对 SimpleTrigger 而言是一大改进。
// Initiate a Schedule Factory
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
// Retrieve a scheduler from schedule factory
Scheduler scheduler = schedulerFactory.getScheduler();
// current time
long ctime = System.currentTimeMillis();
// Initiate JobDetail with job name, job group, and executable job class
JobDetail jobDetail =
new JobDetail("jobDetail2", "jobDetailGroup2", ObjectClientTest.class);
// Initiate CronTrigger with its name and group name
CronTrigger cronTrigger = new CronTrigger("cronTrigger", "triggerGroup2");
// cronTrigger.setEndTime(endTime)
try {
// setup CronExpression
CronExpression cexp = new CronExpression("0 8 11 ? * * ");
// Assign the CronExpression to CronTrigger
cronTrigger.setCronExpression(cexp);
} catch (Exception e) {
e.printStackTrace();
}
// schedule a job with JobDetail and Trigger
scheduler.scheduleJob(jobDetail, cronTrigger);
// start the scheduler
scheduler.start();
}
public void execute(JobExecutionContext context) throws JobExecutionException
{
//设置需要定时执行的任务
try {
Call call= (Call) service.createCall();
/*下面三行是传递自定义对象时特有的三行*/
QName qn = new QName("urn:ProcessObject", "Order");
//这里得order与wsdd文件中得myNs后得内容是一致得
call.registerTypeMapping(OrderBean.class, qn,
new org.apache.axis.encoding.ser.BeanSerializerFactory(OrderBean.class, qn),
new org.apache.axis.encoding.ser.BeanDeserializerFactory(OrderBean.class, qn));
//
call.setTargetEndpointAddress(new URL(targetPoint));
call.setOperationName(new QName("ProcessObject","process"));
order = (OrderBean)call.invoke(new Object[]{ob});
System.out.println("name:"+order.getName());
} catch (Exception e) {
e.printStackTrace();
} }
public static void main(String[] args) throws SchedulerException {
ob.setAge(21);
ob.setName("xhf");
String[] items={"ipod","thinkpad"};
int[] price={11,12};
ob.setItems(items);
ob.setPrice(price);
ob.setChecked(false);
ObjectClientTest oct=new ObjectClientTest();
oct.task();
}}
这样就ok了,你试试
看看这个,Spring的:
表达式意义 "0 0 12 * * ?" 每天中午12点触发 "0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
>>>>>>>>>>>>>>>>>>>>>>>
其实只是表达式的问题