在Quarkus中使用@ConsumeEvent结合正则匹配事件通道
解决方案
要实现用正则表达式匹配所有以telemetry-feed-开头的事件通道,你只需要修改@ConsumeEvent注解的配置,使用其pattern属性指定正则表达式,而非直接在value中设置固定通道名。
修改后的代码示例:
@ConsumeEvent(pattern = "telemetry-feed-.*") public void publishMatchingSubscriptions(String message) throws Exception { // process data }
关键说明
pattern属性是@ConsumeEvent专门用于接收正则表达式的配置项,用来匹配事件总线的通道名称。- 这里的
telemetry-feed-.*正则会匹配所有以telemetry-feed-为前缀的通道,比如telemetry-feed-1、telemetry-feed-2、telemetry-feed-custom等。 - 确保你的Quarkus版本在1.10及以上,该版本开始支持
@ConsumeEvent的pattern属性。
内容的提问来源于stack exchange,提问作者Kavishka Madhushan
相关产品推荐
相关产品推荐

