是否可以通过以下注释在XML配置中实现Java中的时区设置?
@Scheduled(cron = "0 0 8,20 * * *", zone = "GMT-3")
我在XML定义中看不到任何其他属性,但也许有一个解决方案可以实现所需的目标。
示例配置:
<task:scheduler id="myScheduler" pool-size="2" />
<bean class="MyClass"
id="myBean" />
<task:scheduled-tasks scheduler="myScheduler">
<task:scheduled ref="myBean" method="gprs" fixed-rate="300000" />
<task:scheduled ref="myBean" method="reporteGpsGprs" cron="0 0 8,20 * * *" />
</task:scheduled-tasks>
当前的Spring依赖项:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.2.2.RELEASE</version>
</dependency>
不幸的是,在xsd中,我没有看到任何其他属性来定义xml中的时区。您可以做的是使用ref
和method
属性来定义返回计划的工厂类。
裁判:http://www.springframework.org/schema/task/spring-task-4.0.xsd
你可以使用触发器的属性:
<task:scheduler id="myScheduler" pool-size="2" />
<bean class="MyClass" id="myBean" />
<task:scheduled-tasks scheduler="myScheduler">
<task:scheduled ref="myBean" method="reporteGpsGprs" trigger="myTriggerId" />
</task:scheduled-tasks>
并定义一个org.springframework.scheduling.support.CronTrigger就像这样:
<bean id="myTriggerId" class="org.springframework.scheduling.support.CronTrigger">
<constructor-arg name="expression" value="0 0 8,20 * * *"/>
<constructor-arg name="timeZone" value="GMT-3"/>
</bean>
我有一套使用spring框架用Java写的服务。一些服务有预定的任务(使用spring的< code>@Scheduled注释)来做一些内务处理(生成处理过的数据,数据清理等。).由于这些计划任务,我不能运行服务的多个实例,因为所有实例都选择相同的任务,并且多次执行,导致重复/损坏的数据。为了解决这个问题,我想在任务执行时进行检查,并且只允许在一个实例上执行。我该怎么做?这个问题有更好的解决方法吗
我已经使用java创建了特定于时区的计划任务事件。我的密码是贝娄。 但是问题是当调用这个方法时,它会很快运行这个任务。我需要每天12点在亚洲/科伦坡时区运行这项工作。那要怎么做?
我在context.xml文件中定义了一个Spring调度任务,它每分钟运行一次。该任务调用postgres存储过程。存储过程运行时可以持续一分钟以上。如果当前运行没有完成,spring框架会调用相同的调度程序吗?谢谢,
本文向大家介绍Spring定时任务实现与配置(一),包括了Spring定时任务实现与配置(一)的使用技巧和注意事项,需要的朋友参考一下 朋友的项目中有点问题。他那边是Spring架构的,有一个比较简单的需要定时的任务执行。在了解了他的需求之后,于是提出了比较简单的Spring+quartz的实现方式。 注意本文只是讨论,在已搭建完毕的Spring工程下,完成最简单的定时任务。 第一步,要知道Spr
我用Spring Boot构建simpy web api services应用程序,并用Spring Boot中的计划任务创建了一些cron作业服务,但不起作用。我需要在每周的12:00(星期一至星期五)运行此服务。这是一个exmaple sheduling:
我使用spring boot with@Scheduled已经有一段时间了,但是最近我发现有一个潜在的危险威胁,如下所述:我发现当应用程序运行和计划任务运行几次时,有很多线程等待但没有完成,这在thread stacktrace中显示为'kill-3'。为了清除可能导致此问题的任何内容,我做了一个完全虚设的任务: 这是我的日志: 20151102 11:54:50.660信息池-3-线程-2---