小编jag*_*lan的帖子

我们可以在 Spring Batch 的 Tasklet 中使用 @Autowired 吗?

我的应用程序中有一个 Spring Batch tasklet,如下所示。

@Service
public class SampleTasklet implements Tasklet {
    
    @Autowired
    private UserService userService;

    @Override
    public RepeatStatus execute(StepContribution contribution,
                                ChunkContext chunkContext) throws Exception {

        System.err.println(userService.getUsers().size());
        return RepeatStatus.FINISHED;
    }

}
Run Code Online (Sandbox Code Playgroud)

我有一个服务类如下。

@Service
@Slf4j
public class UserService {
    public Map<String, String> getUsers(){
        return null
    }

}
Run Code Online (Sandbox Code Playgroud)

Spring Boot 类:

@SpringBootApplication
@Slf4j
public class SampleBatchApp {

    public static void main(String[] args) {
        log.info("Custom DAM Batch Application starting");
        SpringApplication.run(SampleBatchApp.class, args);
    }

}
Run Code Online (Sandbox Code Playgroud)

Spring Batch File:——根据评论编辑。

@Configuration
@EnableBatchProcessing
public class SampleBatch {

    @Autowired
    public …
Run Code Online (Sandbox Code Playgroud)

java spring spring-batch

9
推荐指数
1
解决办法
6891
查看次数

如何从 Spring Cloud 流中读取 Kafka 消息密钥?

我正在使用 Spring Cloud 流来消费来自 Kafka 的消息。

是否可以从代码中读取 Kafka 消息密钥?

我有一个 Kafka 主题,它通常有两种类型的消息。要采取的操作因消息键而异。我看到 spring 文档只有以下内容来阅读消息。在这里,我需要指定消息的实际映射(此处为 Greetings 类)。但是,我需要一种方法来读取消息键并确定可反序列化的 Pojo

public class GreetingsListener {

    @StreamListener(GreetingsProcessor.INPUT)
    public void handleGreetings(@Payload Greetings request) {
     
    }
}
Run Code Online (Sandbox Code Playgroud)

spring apache-kafka spring-cloud-stream

1
推荐指数
1
解决办法
1604
查看次数