spring很好的集成了quartz。现在就在实际工作用到的,简单总结了下:
定义的是定时器的工厂类:
<beans>
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers" ref="triggers"/><!--这里就是很多定时器-->
<property name="configLocation" value="classpath:quartz.properties"/><!-- 这里是quartz的配置文件哦,呵呵--->
</bean>
</beans>
下面来看下quartz.properties的配置文件吧:
#============================================================================
# 配置 Main Scheduler Properties
#============================================================================
org.quartz.scheduler.instanceName = DefaultQuartzScheduler
org.quartz.scheduler.rmi.export = false
org.quartz.scheduler.rmi.proxy = false
org.quartz.scheduler.wrapJobExecutionInUserTransaction = false
#============================================================================
# 配置执行线程池
#============================================================================
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 10
org.quartz.threadPool.threadPriority = 5
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread = true
#============================================================================
# 配置 JobStore
#============================================================================
org.quartz.jobStore.misfireThreshold = 60000
#内存中JobStore, 服务器重启时执行记录会丢失
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
#数据库中JobStore,不过HSQLDB不支持select * from locks for update 的语法
#org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
#org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.HSQLDBDelegate
#org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
以上就是定义的quartz.properties配置文件
然后就看工厂类里面的参数:<property name="triggers" ref="triggers"/>的配置了:
由于这里有很多的定时器所以就用了个list
<bean id="triggers" class="org.springframework.beans.factory.config.ListFactoryBean">
<property name="sourceList">
<list>
<ref bean="cmsTrigger"/>
<ref bean="taskbillTrigger"/>
<ref bean="redlistTrigger"/>
<ref bean="sortRankTrigger"/>
<ref bean="callingDataImporterTrigger"/>
<ref bean="achieveTrigger"/>
</list>
</property>
</bean>
现在简单的说个其中的一个定时器吧:
现在看到的是:cmsTrigger
<bean id="cmsTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<bean class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="cmsContentService" /><!---对应的相应的service-->
<property name="targetMethod" value="changeToArchive"/><!--- 该service的方法---->
</bean>
</property>
<property name="cronExpression" value="0 0 3 * * ?"/><!--这里就是执行的时间了--->
<!--
请注意:月份中的日期和星期不能同时设置
下面是对应的设置
1.秒 0-59
2.分钟 0-59
3.小时 0-23
4.月份中的日期 1-31
5.月份 1-12或者Jan Feb Mar Apr May Jun Jul Aug Sept Oct Nov Dec
6.星期中的日期 1-7或者MON,TUE,WED,THU,FRI,SAT,SUN.
-->
</bean>
呵呵,简单的应用就到此。。。。。
分享到:
相关推荐
它集成了大量常用的第三方库配置,如 JDBC、MongoDB、JPA、RabbitMQ、Quartz 等,使得开发者可以快速地创建一个独立的、生产级别的基于 Spring 的应用。 Spring Data JPA 是 Spring Framework 的一部分,它提供了...
此外,Spring2.5还加强了与第三方库的集成,例如,对RESTful服务的支持、Quartz调度器的整合等,这使得Spring能够更好地适应现代企业级开发的需求。 总的来说,Spring框架以其强大的功能和灵活性,成为Java开发者的...
它集成了大量常用的第三方库配置,如 JDBC、MongoDB、JPA、RabbitMQ、Quartz 等,使得开发者能够快速地创建一个独立运行的、生产级别的基于 Spring 的应用。 在“一个完整的spring boot项目”中,我们可以深入学习...
标题 "springbootjpa" 暗示了这个项目是基于Spring Boot框架并结合了Java Persistence API (JPA) 的一个应用。Spring Boot是Spring框架的简化版,它旨在简化创建独立、生产级别的基于Spring的应用程序。JPA则是Java...
Quarz是一个强大的Java作业调度框架,用于在应用程序中安排和执行任务。它允许开发者创建、管理和调度复杂的作业,使得...通过学习这些资料,你将能够熟练地运用Quartz进行任务调度,提升你的Java应用的自动化水平。
出价竞拍环节,源码可能会包含一个定时任务来检查并更新最高出价,这可能需要用到Quartz或者Spring的Task调度。 此外,竞拍机制的设计是拍卖网站的关键部分。一般来说,拍卖可以分为英式拍卖(价格逐渐上升,直到...
Java Web定时器是一种在Web应用程序...需要注意的是,虽然`java.util.Timer`可以满足大多数需求,但在高并发环境下,可能需要考虑使用更高级的调度库,如`Quartz`或`Spring Task`,它们提供了更强大的管理和控制能力。
SpringBoot简化了Spring应用的初始搭建以及开发过程。它集成了大量常用的第三方库配置,如数据源、JPA、MVC等,开发者无需繁琐的XML配置,只需少量代码即可创建一个独立运行的Java应用。 2. **RESTful API设计**:...
在Java中,可以使用`Quartz`或`Spring Task`来实现定时任务;如果是Python,可以利用`APScheduler`或者`schedule`库。开发者需要编写定时任务逻辑,确保在指定时间触发短信发送。 2. **数据库操作**:描述中提到...
例如,描述中的场景中,由于Spring+WS、Guvnor5.x等组件的存在,使得单台Tomcat在处理大量请求和复杂业务规则时达到极限。此时,如果无法增加硬件资源或更换更强大的应用服务器(如Weblogic),那么实施Tomcat集群...
10. **性能监控**:通过使用如Spring Actuator这样的工具,开发者可以监控应用的性能指标,如内存使用、线程状态等,以便进行优化。 总的来说,TinderClone项目展示了Java在构建大型社交应用时的强大能力,涉及到了...