我使用Spring Batch 4.3.2。我需要为JobLauncher定义一个TaskExecutor。由于我不想启用bean覆盖,使用DefaultBatchConfigurer的解决方案不适用。我最终得到了下面的bean,自己定义了所有bean。我的问题是:
谢谢你的帮助!干杯
@Bean
public JobBuilderFactory jobBuilderFactory(JobRepository jobRepository) {
return new JobBuilderFactory(jobRepository);
}
@Bean
public StepBuilderFactory stepBuilderFactory(JobRepository jobRepository, PlatformTransactionManager transactionManager) {
return new StepBuilderFactory(jobRepository, transactionManager);
}
@Bean
public JobRegistry jobRegistry() {
return new MapJobRegistry();
}
@Bean
public JobRepository createJobRepository(DataSource dataSource, PlatformTransactionManager transactionManager) throws Exception {
JobRepositoryFactoryBean factory = new JobRepositoryFactoryBean();
factory.setDataSource(dataSource);
factory.setTransactionManager(transactionManager);
factory.afterPropertiesSet();
return factory.getObject();
}
@Bean
public JobExplorer createJobExplorer(DataSource dataSource) throws Exception {
JobExplorerFactoryBean jobExplorerFactoryBean = new JobExplorerFactoryBean();
jobExplorerFactoryBean.setDataSource(dataSource);
jobExplorerFactoryBean.afterPropertiesSet();
return jobExplorerFactoryBean.getObject();
}
@Bean
public JobLauncher jobLauncher(ThreadPoolTaskExecutor taskExecutor, JobRepository jobRepository) throws Exception {
SimpleJobLauncher jobLauncher = new SimpleJobLauncher();
jobLauncher.setJobRepository(jobRepository);
jobLauncher.setTaskExecutor(taskExecutor);
jobLauncher.afterPropertiesSet();
return jobLauncher;
}
@Bean
public ThreadPoolTaskExecutor msBatchTaskExecutor() {
ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor();
taskExecutor.setCorePoolSize(5);
taskExecutor.setMaxPoolSize(50);
taskExecutor.setQueueCapacity(50);
return taskExecutor;
}
如果您不想使用@EnableBatchProcessing
,那么Java配置的方法就是手动定义基础结构bean。
请注意,这也是XML配置的工作方式,您需要手动定义架构体系bean,因为XML中没有@EnableBatchProcess
的等价物(它有一个开放的功能请求)。
本文向大家介绍kafka基础架构相关面试题,主要包含被问及kafka基础架构时的应答技巧和注意事项,需要的朋友参考一下 1)Producer :消息生产者,就是向kafka broker发消息的客户端; 2)Consumer :消息消费者,向kafka broker取消息的客户端; 3)Consumer Group (CG):消费者组,由多个consumer组成。消费者组内每个消费者负责消费不同分
Java虚拟机简介 “Java虚拟机”可能指如下三个不同的东西 抽象规范 一个具体的实现 一个运行中的虚拟机实例 每个Java程序都运行在某个具体的Java虚拟机实现的实例上。一个Java虚拟机的实例负责运行一个Java程序。当启动一个Java程序的时候,一个虚拟机的实例也就诞生了。当该程序关闭退出时,这个虚拟机实例也就随之消亡。 线程介绍 在Java虚拟机内部有两种线程: 守护线程:通常是由虚拟
这是AWS EC2的基本结构,其中EC2代表Elastic Compute Cloud。 EC2允许用户根据需要使用不同配置的虚拟机。 它允许各种配置选项,单个服务器的映射,各种定价选项等。我们将在AWS产品部分详细讨论这些。 以下是架构的图示。 Note - 在上图中, S3代表简单存储服务。 它允许用户使用API调用存储和检索各种类型的数据。 它不包含任何计算元素。 我们将在AWS产品部分
问的最多的问题:”一个基于 MINA 的应用看起来像什么”?本小节我们将来了解一下基于 MINA 的应用架构。我们收集了一些基于 MINA 的演示信息。 架构鸟瞰图 这里,我们可以看到,MINA 是你的应用程序 (可能是一个客户端应用或者一个服务器端应用) 和基础网络层之间的粘合剂,可以基于 TCP、UDP、in-VM 通信甚至一个客户端的 RS-232C 串行协议。 你要做的仅仅是在 MINA
面试时间 8.25 持续时间 45 分钟 面试问题: 自我介绍 本专业的项目亮点介绍 redis的介绍 redis为什么快 redis单线程为什么快 redis单线程的话某个线程卡住了怎么办 mysql数据结构 - B+树 mvcc 存储引擎 mysql崩溃怎么保证数据安全(两个日志) kafka在项目中的应用场景 题目 : (easy) 层序遍历 自己构造 总结 : 面试官挺好的,会帮助回答过
总的来说,Android的系统体系结构分为四层,自顶向下分别是: 应用程序(Applications) 应用程序框架(Application Frameworks) 系统运行库与Android运行环境(Libraris & Android Runtime) Linux内核(Linux Kernel) 安卓系统结构示意图 下面对每层进行详细说明 1. 应用程序(Applications) Andro