在工作中也会遇到需要接收前台发送数据,进行存储的情况。这里以接收日志服务器的日志数据保存到kafka为例。
在数据模拟程序中配置日志要发送的url地址:
dest:
logUrl: http://localhost:8080/app
之后重启数据模拟程序。
在数据接口程序中接收日志并写入kafka。
使用SpringBoot提供的KafkaTemplate可以作为客户端生产者向kafka进行生产操作。
在Service中添加接收数据写入Kafka的方法如下:
public interface DataInterfaceService
{
void sendDataToKafka(String data);
}
编写Service的方法实现:
@Service
public class DataInterfaceServiceImpl implements DataInterfaceService
{
//读取配置文件中dest.topic参数获取要写入的主题
@Value(“${dest.topic}”)
private String topic;
@Autowired
private KafkaTemplate<String,String> kafkaTemplate;
Override public void sendDataToKafka(String data) { kafkaTemplate.send(topic,data); }
}
默认数据模拟程序发送get请求,参数名为logStr,参考数据模拟程序的配置文件。
@RestController public class DataInterfaceController { @Autowired private DataInterfaceService dIService;
@GetMapping(value = “/app”)
public void saveLogToKafka(String logStr){
log.info(logStr);
dIService.sendDataToKafka(logStr);
}
}
打开Kafka客户端进行验证:
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有