How java-techie-jt/kafka-producer-example works
This is a small Spring Boot Kafka producer. HTTP clients submit either a string message or a Customer payload; EventController delegates publishing to KafkaMessagePublisher, which sends to Kafka topics through KafkaTemplate. KafkaProducerConfig supplies the producer settings, template, and a topic declaration. The README also documents operating Kafka locally, but not additional application workflows. Wiring beyond the sampled source is omitted.
Main entry points: EventController.java Event controller · KafkaProducerConfig.java Kafka template · KafkaMessagePublisher.java Kafka publisher · Customer.java Customer payload
Components 9
Application entry
- Spring Boot app
src/main/java/com/javatechie/KafkaProducerExampleApplication.java
HTTP publishing
- Event controller
src/main/java/com/javatechie/controller/EventController.java - Customer payload
src/main/java/com/javatechie/dto/Customer.java
Kafka integration
- Kafka publisher
src/main/java/com/javatechie/service/KafkaMessagePublisher.java - Producer config
src/main/java/com/javatechie/config/KafkaProducerConfig.java - Kafka template
src/main/java/com/javatechie/config/KafkaProducerConfig.java - Declared topic
src/main/java/com/javatechie/config/KafkaProducerConfig.java
Other components
- HTTP client
- Kafka broker
Connections 10
- Spring Boot app → Event controller: serves routes
- HTTP client → Event controller: HTTP request
- HTTP client → Customer payload: submits JSON
- Event controller → Kafka publisher: delegates publish
- Event controller → Customer payload: binds payload
- Kafka publisher → Kafka template: sends records
- Producer config → Kafka template: configures
- Producer config → Declared topic: declares topic
- Kafka template → Kafka broker: publishes records
- Declared topic → Kafka broker: topic declaration