0
私はカフェカプロデューサーとコンシューマーを1つのプロジェクトで作っています。一般的なスプリングカフカリスナー
私は別のmavenプロジェクトでそれを使いたいので、上記のkafkaプロジェクトの依存関係を追加しました。今問題はプロデューサですが、このプロジェクトを追加する他のすべてのプロジェクトによってオーバーライドできるリスナジェネリックを作成する方法です。
は現在、私は1つのプロジェクトでリスナーを持っている
public class Listener {
public CountDownLatch countDownLatch0 = new CountDownLatch(3);
public CountDownLatch countDownLatch1 = new CountDownLatch(3);
public CountDownLatch countDownLatch2 = new CountDownLatch(3);
@KafkaListener(id = "id0", topicPartitions = { @TopicPartition(topic = "SpringKafkaTopic1", partitions = { "0" }) })
public void listenPartition0(ConsumerRecord<?, ?> record) {
System.out.println("Listener Id0, Thread ID: " + Thread.currentThread().getId());
System.out.println("Received: " + record);
countDownLatch0.countDown();
}
@KafkaListener(id = "id1", topicPartitions = { @TopicPartition(topic = "SpringKafkaTopic1", partitions = { "1" }) })
public void listenPartition1(ConsumerRecord<?, ?> record) {
System.out.println("Listener Id1, Thread ID: " + Thread.currentThread().getId());
System.out.println("Received: " + record);
countDownLatch1.countDown();
}
@KafkaListener(id = "id2", topicPartitions = { @TopicPartition(topic = "SpringKafkaTopic1", partitions = { "2" }) })
public void listenPartition2(ConsumerRecord<?, ?> record) {
System.out.println("Listener Id2, Thread ID: " + Thread.currentThread().getId());
System.out.println("Received: " + record);
countDownLatch2.countDown();
}
私はすべての依存関係としてこのプロジェクトを追加し、それぞれの話題を聞くことができる他のすべてのプロジェクトで上書きすることができ、一般的なリスナーを作るにはどうすればよい
ありがとう、これは私が探していたものです。 – user1201239