您现在的位置是: 首页 > 车型评测 车型评测
java quartz 代码_java quarter
ysladmin 2024-07-04 人已围观
简介java quartz 代码_java quarter 在接下来的时间里,我将尽力为大家解答关于java quartz 代码的问题,希望我的回答能够给大家带来一些思考。关于java q
在接下来的时间里,我将尽力为大家解答关于java quartz 代码的问题,希望我的回答能够给大家带来一些思考。关于java quartz 代码的话题,我们开始讲解吧。
1.java quartz ����
2.用java实现定时任务要稳定的。谁帮实现一下。 比如: 每天早上8点输出一句话。(天天早上8点都输出).
3.java在servlet里设置个定时器,让其在tomcat一运行时,自动每隔几个小时执行一个任务?
4.java写一个定时器,定时对一个变量赋不同值,这个程序代码怎么写
java quartz ����
主类:
package tiwen4; import java.util.Calendar; import java.util.Timer; public class quartz { public static void main(String[] args) { try{ Calendar cal = Calendar.getInstance();//设置定时时间 cal.add(Calendar.DATE, 0);//表示从今天的12点开始跑起来,如果当前时间超过12点会马上跑一次,否则等12点再跑第一次 cal.set(Calendar.HOUR_OF_DAY, 12);//24小时制的,12就是中午12点 cal.set(Calendar.MINUTE, 0);//分 cal.set(Calendar.SECOND, 0);//秒 Timer processTimer = new Timer(); processTimer.scheduleAtFixedRate(new ProcessClass(), cal.getTime(), 800000);//800000是24小时,即24小时跑一次 }catch(Exception e){ e.printStackTrace(); }finally{ } } }
定时器调用的类--我在这里只是输出了一下~你也可以自己加函数:
package tiwen4; import java.util.TimerTask; public class ProcessClass extends TimerTask { @Override public void run() { // TODO Auto-generated method stub System.out.println("输出了哈哈");// } }
我上面用的只是一种方式,其实定时方式有很多的linux和window都有自带的定时器,可以直接调用,也可以用上面所说的quartz包带的框架等等
用java实现定时任务要稳定的。谁帮实现一下。 比如: 每天早上8点输出一句话。(天天早上8点都输出).
写法如下:<bean id="StaticPageQuartz" class="com.test.quartz.pageconvertor.StaticPageConvertor"
/>
<bean id="BuildStaticPageTask"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
<property name="targetObject" ref="StaticPageQuartz" />
<property name="targetMethod" value="doHTMLConvertor" />
<property name="concurrent" value="false" />
</bean>
<bean id="BuildStaticPageTrigger"
class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="BuildStaticPageTask" />
<property name="cronExpression" value="0 0/5 * * * ?" /><!--每五分钟执行一次--
</bean>
扩展资料:
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。
Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EE?full-stack(一站式)?轻量级开源框架。
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。
Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 2.3.0。
参考资料:
参考资料:
java在servlet里设置个定时器,让其在tomcat一运行时,自动每隔几个小时执行一个任务?
如果是linux,可以使用linux的cron服务来每天8点运行你的程序
如果不是或者没有条件使用cron,可以考虑使用java的开源组件quartz,它完全支持cron表达式来声明定时任务,也易于和spring集成。楼上已经给出quartz的用法了。
如果要纯粹自己写一个程序的话:
public class Test {
public static void main(String[] args) throws Exception{
while(true){
//睡到明天8点
Thread.sleep(getDelay());
System.out.println("起床啦~~");
}
}
private static long getDelay(){
//计算离下一次8点还有多久(毫秒)
long delay = 0;
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 23);
c.set(Calendar.MINUTE, 59);
c.set(Calendar.SECOND, 59);
//计算当前离今天23:59:59有多少毫秒
delay = c.getTimeInMillis() - System.currentTimeMillis();
//加一秒到下一天,再加上8小时的毫秒
delay = delay + 1000 + 60*60*8*1000;
return delay;
}
}
注意:这个程序有一个问题:就是如果print语句换成一个非常耗时的操作,以至于到第二天才执行完,那么就会跳过第二天8点直接到第三天八点了。不过按你的要求,输出一句话是没问题的。
你也可以不用Thread.sleep,用Timer类也可以。
java写一个定时器,定时对一个变量赋不同值,这个程序代码怎么写
看你要求 如果复杂的定时 可以使用 定时框架 quartz,如果简单的定时可以使用package?test;import?java.util.Timer;
public?class?TimeTaskTest?{
public?static?void?main(String[]?args){
Timer?timer?=?new?Timer();? timer.schedule(new?Task(),?60?*?1000);}
}
package?test;
import?java.util.TimerTask;
public?class?Task?extends?TimerTask?{
public?void?run()
{System.out.println("定时任务执行");
}}
import?java.util.Random;
import?java.util.Timer;
import?java.util.TimerTask;
public?class?MainEntry?{
private?int?a; public?void?setVal(){ Timer?timer?=?new?Timer(); //每隔一秒生成一个[1,100)内的随机整数,赋给成员a timer.schedule(new?TimerTask()?{?@Override
public?void?run()?{
Random?rand?=?new?Random();
setA(rand.nextInt(100));
}
},?1000); } public?void?setA(int?a)?{ this.a?=?a; } public?int?getA()?{ return?a; } public?static?void?main(String[]?args)?{ MainEntry?me?=?new?MainEntry(); me.setVal(); }}
好了,今天关于“java quartz 代码”的话题就讲到这里了。希望大家能够对“java quartz 代码”有更深入的认识,并且从我的回答中得到一些帮助。