首页 / JAVA / java – Jetty中的计划任务
java – Jetty中的计划任务
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Jetty中的计划任务,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2265字,纯文字阅读大概需要4分钟。
内容图文
我想编写一个简单的Groovlet,它定期运行一个任务并使用Jetty容器.完成此任务的最简单方法是什么?我认为应该使用Quartz,但我不确定它是如何与Jetty集成的.我是否需要创建一个控制面板来启动和停止任务?有什么简单的例子我可以看一下开始吗?
解决方法:
您必须创建作业配置文件“jobconf.xml”或属性文件,其中必须配置作业.必须将此文件添加到应用程序的类路径或jetty中.
您必须将QuartzInitializer添加到您的web.xml和servlet参数中,如下所示:
<web-app>
<servlet>
<servlet-name>QuartzInitializer</servlet-name>
<display-name>Quartz Initializer Servlet</display-name>
<servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<init-param>
<param-name>config-file</param-name>
<param-value>quartz.properties</param-value>
</init-param>
<init-param>
<param-name>shutdown-on-unload</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>start-scheduler-on-load</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>first</servlet-name>
<servlet-class>com.v2sol.StartQuartz</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>first</servlet-name>
<url-pattern>/fst</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>one</servlet-name>
<servlet-class>com.v2sol.ExcelDBServlet</servlet-class>
<init-param>
<param-name>cronExpr</param-name>
<param-value>0,30 * * ? * MON-FRI</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>one</servlet-name>
<url-pattern>/excel</url-pattern>
</servlet-mapping>
</web-app>
和servlet中的使用调度程序:
System.out.println("Initializing Scheduler PlugIn for Jobs!");
super.init(config);
ServletContext ctx = config.getServletContext();
Scheduler scheduler = null;
StdSchedulerFactory factory = (StdSchedulerFactory)
ctx.getAttribute(QuartzInitializerServlet.QUARTZ_FACTORY_KEY);
try {
scheduler = factory.getScheduler();
JobDetail jd = new JobDetail("job1", "group1",ExcelJob.class);
CronTrigger cronTrigger = new CronTrigger("trigger1","group1");
String cronExpr = null;
cronExpr = getInitParameter("cronExpr");
System.out.println(cronExpr);
cronTrigger.setCronExpression(cronExpr);
scheduler.scheduleJob(jd, cronTrigger);
System.out.println("Job scheduled now ..");
} catch (Exception e){
e.printStackTrace();
}
内容总结
以上是互联网集市为您收集整理的java – Jetty中的计划任务全部内容,希望文章能够帮你解决java – Jetty中的计划任务所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。