Skip to content

Commit 00456e7

Browse files
committed
Document ackMode attribute in @KafkaListener
Signed-off-by: gobeomjun <alap_u@naver.com>
1 parent a81377f commit 00456e7

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

spring-kafka-docs/src/main/antora/modules/ROOT/pages/kafka/receiving-messages/listener-annotation.adoc

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,20 @@ public void listen(String data, Acknowledgment ack) {
189189
}
190190
----
191191

192+
Starting with version 4.0.1, you can override the container factory's default `AckMode` directly on the `@KafkaListener` annotation using the `ackMode` attribute:
193+
194+
[source, java]
195+
----
196+
@KafkaListener(id = "manual", topics = "myTopic", ackMode = "MANUAL")
197+
public void listen(String data, Acknowledgment ack) {
198+
...
199+
ack.acknowledge();
200+
}
201+
----
202+
203+
The `ackMode` attribute accepts string values corresponding to `ContainerProperties.AckMode` enum values: `RECORD`, `BATCH`, `TIME`, `COUNT`, `COUNT_TIME`, `MANUAL`, or `MANUAL_IMMEDIATE`.
204+
This eliminates the need to create separate container factories solely for different acknowledgment modes.
205+
192206
[[consumer-record-metadata]]
193207
== Consumer Record Metadata
194208

0 commit comments

Comments
 (0)