草庐IT

作业调度

全部标签

java - 动态方法调度如何在 Java 中工作

父类(superclass)变量能否访问子类的重写方法。例如:classA{voidcallMe(){System.out.println("InsideA");}}classBextendsA{voidcallMe(){System.out.println("InsideB");}}classDispatch{publicstaticvoidmain(Stringargs[]){Aa=newA();Bb=newB();//ObjectoftypeBAr;//ObtainareferenceoftypeAr=a;//ReferstoAobjectr.callMe();//CallsA'

java - Quartz 作业抛出 InvalidDataAccessApiUsageException : no transaction is in progress;

我有一个非常简单的quartz作业,它试图从数据库中获取打印机记录,我收到此错误:org.springframework.dao.InvalidDataAccessApiUsageException:notransactionisinprogress;nestedexceptionisjavax.persistence.TransactionRequiredException:notransactionisinprogressjavax.persistence.TransactionRequiredException:notransactionisinprogress这是应用程序的代码

java - 如何停止使用 spring 任务安排的作业

我已经实现了一个示例spring计划任务,其applicationContext如下,我怎样才能停止这个调度方法? 最佳答案 将ThreadPoolTask​​Scheduler注入(inject)到另一个bean中,并调用shutdown()。如果这是NotAcceptable,您可以配置cronbean来接受一个标志。例如:publicclassJob(){privatefinalAtomicBooleanstop=newAtomicBoolean(false);publicvoidshow(){if(stop.get()){r

java - 如何允许调度鼠标事件以禁用节点?

在fx中,不会将mouseEvents分派(dispatch)到禁用的节点,最后是一个演示行为的快速示例。对于像我这样的Swinger,这有点令人惊讶:在我的领域,事件已交付,目标(ui-delegate)的任务是决定是否应处理事件。事实上,最近-完全有效的IMO-use-caseofshowingatooltipoveradisabledcomponent指出了这一点从技术上讲,调度似乎在Node的一种实现方法中被切断了:/***Findsatop-mostchildnodethatintersectsthegivenray.**Theresultargumentisusedfors

java - spring batch 在作业存储库和实际任务之间使用不同的事务管理器

我使用SpringBatch使用2个(可能更多,为简单起见假设2个)数据库。一个用于存储所有作业数据(所有BATCH_*表)。另一个用于实际运行我的业务逻辑数据。有些事情我不太明白。当我声明我的JobRepository时,我已经指定了我的TransactionManager,为什么我必须在我的tasklet上再做一次?(我不是故意使用默认名称的)我目前正在为tasklet提供与我的JobRepository相同的TrasactionManager,它管理与我在步骤中所做的不同的连接。这是否意味着我在作者或读者内部进行了自己的事务管理?如果#2为真,HowdoesSpringBatch

Java - 使用 ReentrantLock 异步运行作业?

下面的代码允许我们运行一个作业,同时通过使用ReentrantLock确保一次只能运行一个作业。有没有办法修改此代码以异步运行job.call()并在启动线程之前将MyConcurrentJobException返回给客户端?我们尝试将try/catch/finallyblock包装在一个新的Thread中,但是unlock和lock必须在同一个线程中发生所以我们得到一个IllegalMonitorException??finalstaticLocklock=newReentrantLock();publicObjectrunJob(Stringdesc,Callablejob,boo

java - AWT 事件调度线程中的 SwingUtilities.invokeLater

如果您正在修改GUI并且处于AWT事件调度线程中,例如ActionListener,您是否应该使用SwingUtilities.invokeLater(Runnable)? 最佳答案 您必须始终在事件调度线程(EDT)中进行GUI更新。然而,正如Jeffrey在评论中指出的那样,Swing对象上的ActionListener.actionPerformed方法已经从EDT调用。如果您只是想让JButton看起来启用/未启用或从JList添加/删除项目,并且您通过ActionListener在Swing组件上,那么您不必显式调用Swi

java - 停止使用 Java 运行 Kettle 作业/转换

我也在开发一个基于网络应用程序的ETL(使用Kettle引擎),使用Java。我在尝试停止正在运行的作业时遇到了问题。我不确定使用CarteSingleton.java是否正确。我正在使用自定义单例map。我的代码如下Jobjob=newJob(null,jobMeta);job.setLogLevel(LogLevel.DETAILED);job.setGatheringMetrics(true);job.start();调用job.start()后,我试图将该作业对象存储在自定义单例映射中,并检索存储在映射中的确切作业对象,并在调用stopAll()时(参见下面的代码)在作业的状态

Quartz集群并发执行导致重复调度问题

Quartz集群并发执行导致重复调度问题排查1.问题描述定时平台在某一时刻触发定时job时,集群中的两个调度器节点同时执行了job,导致该定时任务同一时刻下发给业务应用两次,引发并发重复调用的问题。在两台调度机器上查看调度日志,发现第一个机器节点A在12:30:00:074执行了job,第二个机器节点B在12:30:00:079也执行了job,两个节点的调度日志如下:2021-10-2912:30:00,074INFO[dspQuartzScheduler_Worker-42]com.xxx.dsp.scheduler.jobbean.RemoteHttpJobBean-dspschedule

java - tOracleOutput 组件中的 Talend ETL 作业错误

我是TalendETL的新手,正在使用TalendOpenStudioforBigData版本5.4.1。我开发了一个简单的TalendETL作业,它从csv文件中获取数据并将数据插入到我的本地Oracle数据库中。下面是我的包裹的样子:作业在csv文件的最后一条记录之后返回ArrayIndexOutOfBounds异常。但是我不确定为什么它首先要返回它?我查看了此链接上给出的解决方案:http://www.talendforge.org/forum/viewtopic.php?id=21644但是好像一点用都没有。我有oracle组件的最新驱动程序,增加/减少提交大小似乎不会影响它。