spring-batch相关内容

如何避免在Lucene 6.0中建立重复的文档索引

我正在为从数据库获取的值创建一个Lucene索引.我已将索引OpenMode设置为OpenMode.CREATE_OR_APPEND. 索引创建步骤是Spring Batch Job的一部分. 我的理解是,当我第一次运行作业时,建立索引可能需要一段时间,但是当我针对相同的未更改原始数据再次运行该作业时,它应该很快,因为文档已经在那里因此尚未执行 UPDATE或INSERT . 但 ..
发布时间:2020-05-04 07:49:09 Java开发

访问MDC的职位信息

我正在尝试用MDC记录工作信息.我有一个名为CommonBatchConfiguration的文件,用于处理线程和记录作业信息.我想记录诸如jobName和executionId之类的内容,以进行可能运行的任何作业. 我有一个这样的启动器: @Bean(name = "AsyncMccJobLauncher") public JobLauncher simpleJobLaunc ..
发布时间:2020-05-03 08:47:10 Java开发

登录Spring批处理

我是春季批处理的新手.我想知道在实现spring批处理读取器和写入器时如何放置日志记录语句.例如,如果我在Spring上下文XML中定义读取器和写入器,那么以后我将无法调试代码失败的地方. 如何在Spring批处理中实现日志记录. 我是否需要扩展Java中可用的阅读器类(例如flatFileReader),并将日志记录语句放入Java类中. 或者我可以在将代码保存在上下文文件中的同时实现这一 ..
发布时间:2020-05-03 08:29:06 其他开发

Spring Batch MDC日志记录

我想知道如何在Spring Batch中使用MCD记录Job Name和Execution ID之类的东西. 以下是一些代码: bootstrap.properties 此文件包含我当前记录的项目列表,并且我在此处添加了execId作为第三个元素. logging.pattern.level=%5p [%X{X-B3-TraceId:-},%X{sessionId:-},% ..
发布时间:2020-05-03 07:25:25 其他开发

JpaItemWriter:没有事务在进行中

我想使用JpaItemWriter批处理持久化实体.但是,当我使用以下代码持久化时,会被告知: Hibernate: select nextval ('hibernate_sequence') [] 2014-03-19 15:46:02,237 ERROR : TransactionRequiredException: no transaction is in p ..
发布时间:2019-09-20 19:54:52 Java开发

需要配置我的JPA层以使用TransactionManager(Spring Cloud Task +批处理意外注册PlatformTransactionManager)

我在项目中使用Spring Cloud Task + Batch. 我计划对任务使用业务数据和Spring审核数据的不同数据源.所以我配置了类似的东西: @Bean public TaskConfigurer taskConfigurer() { return new DefaultTaskConfigurer(this.singletonNotExposedSpr ..

春季批处理jpaPagingItemReader为什么不读取某些行?

我正在使用Spring Batch(3.0.1.RELEASE)/JPA和HSQLBD服务器数据库. 我需要浏览整个表(使用分页)并更新项目(一个接一个).因此,我使用了jpaPagingItemReader.但是当我运行作业时,我可以看到跳过了一些行,并且跳过的行数等于页面大小.例如,如果我的表有12行并且jpaPagingItemReader.pagesize = 3,则作业将读取:第1,2, ..
发布时间:2019-09-20 18:42:27 其他开发

SimpleAsyncTaskExecutor在处理完成后尝试读取记录

在我的spring批处理项目中,我需要从一个表的行列表中读取,创建一个4块并进行处理,然后写入另一个表.我已经实现了SimpleAsyncTaskExecutor以允许并行处理块,但是我发现在处理记录集中的所有记录之后,Spring Batch试图继续读取下一个结果并失败.超过跳过级别后,显然会中止作业. 我的查询是-为什么在处理完该集中的所有记录后,批次将继续寻找下一条记录? 我最后 ..
发布时间:2019-09-02 14:22:04 Java开发

用Java处理数百万个数据库记录

我需要编写一个批处理作业,该批处理作业从数据库表中获取行并基于特定条件,写入其他表或使用特定值更新该行.我们正在使用spring和jdbc来获取结果集,并使用计划每周运行一次的独立Java程序来遍历和处理记录.我知道这不是正确的方法,但是我们必须将其作为临时解决方案.随着记录增长到数百万,我们最终将遇到内存不足的异常,因此我知道这不是最好的方法. 你们中的任何人都可以推荐应对这种情况的最佳方 ..
发布时间:2019-09-02 13:44:16 Java开发

Spring Batch-JdbcCursorItemReader使用大型MySQL表抛出OutOfMemoryError

我正在使用Spring Batch编写程序来处理MySQL数据库表中的7,637,064行.我已经成功使用较小的表,但是当JdbcCursorItemReader尝试打开游标时,该表中的大量行导致OutOfMemoryError异常. 我可能可以通过向其扔一个更大的Xmx来解决此问题,但是在我看来,Spring Batch应该可以处理此问题,而我可能只是缺少关键的配置. Spring ..
发布时间:2019-09-02 13:31:51 Java开发

Spring Batch:要用于大批量&的哪个ItemReader实现?低延迟

用例:从数据库中读取1000万行[10列]并写入文件(csv格式). JdbcCursorItemReader 和&中的哪个ItemReader实现建议使用 JdbcPagingItemReader 吗?会是什么原因呢? 在上述用例中哪个会表现得更好(快速)? 在单进程方法还是多进程方法的情况下选择会有所不同吗? 在使用TaskExecutor的多线程方法的情况下,哪种方法 ..
发布时间:2019-09-02 12:48:44 Java相关

Spring @Transactional和JDBC autoCommit

在我的实际应用程序上,我有一个没有设置JDBC autoCommit = false的DBCP连接池.它似乎具有默认的autoCommit = true. 这可能是一个错误,但我想了解更改此参数的影响. 我正在使用: -带有@Transactional批注的Spring -具有JDBC读取器和写入器的Spring Batch,最终使用JdbcTemplate自定义tasklet 我想知 ..
发布时间:2019-09-02 12:33:19 Java相关

集群环境中的Java Batch作业

我们有一个包含2个JBOSS节点的集群.我们有一个批处理作业,它将所有用户详细信息从活动目录加载到数据库.这项工作每天运行.它以前是在非集群环境中运行的,因此我们将其设计为单例. 现在我们有了一个集群环境,我不知道什么是达到相同结果的最佳方法.我希望批处理作业每天仅运行一次.我们使用spring和hibernate,我查看了Spring批处理.我无法对我的问题给出任何简洁的答案. 任何人都可 ..

退出输入时,Spring Batch Stax XML读取作业不会结束

我正在使用Spring Batch来设置一个处理可能非常大的XML文件的作业。我认为我已经适当地设置了它,但是在运行时我发现作业运行,处理它的输入,然后只是挂起一个执行状态(我可以通过查看JobRepository在JobRepository中的状态来确认)。 p> 我已经多次阅读批处理文档了,但是我没有看到任何明显的“在输入时使作业停止”配置,我缺少。 以下是我的申请背景的相关部分: ..
发布时间:2019-06-14 19:50:40 其他开发