模块 org.redkale
程序包 org.redkale.mq

注释类型 Messaged


  • @Documented
    @Target(METHOD)
    @Retention(RUNTIME)
    public @interface Messaged
    MQ资源注解, 只能标记在Service类方法上, 方法会被框架动态生成MessageConsumer对象供内部调用
    1、方法必须是protected/public
    2、方法不能是final/static
    3、方法的参数只能是1个且为MessageEvent[]
     public class MyMessageService extends AbstractService {
    
        @Messaged(mq="defaultmq", topics={"test-topic"})
        protected void onMessage(MessageEvent<Record>[] events) {
            //打印events
        }
    
        @Messaged(topics={"test-topic2"})
        protected void onMessage2(MessageEvent<Record>[] events) {
            //打印events
        }
    
        @Messaged(topics={"test-topic3"})
        public void onMessage3(MessageEvent<Record>[] events) {
            //打印events
        }
     }
     

    详情见: https://redkale.org

    从以下版本开始:
    2.8.0
    作者:
    zhangjx
    另请参阅:
    ResourceConsumer, MessageEvent
      • group

        String group
        MQ客户端分组名称
        返回:
        组名称
        默认值:
        ""
      • required

        boolean required
        是否必须要加载,为ture时若mq()值对应MessageAgent对象不存在的情况下会抛异常
        返回:
        是否必须要加载
        默认值:
        true
      • topics

        String[] topics
        监听的topic, 当regexTopic()值不为空时忽略此值
        返回:
        topic
        默认值:
        {}
      • regexTopic

        String regexTopic
        监听的topic, 与 topics()的值必须二选一,优先级高
        返回:
        topic正则表达式
        默认值:
        ""
      • convertType

        ConvertType convertType
        消息序列化类型
        返回:
        序列化类型
        默认值:
        org.redkale.convert.ConvertType.JSON
      • mode

        LoadMode mode
        Service加载模式
        返回:
        模式
        默认值:
        org.redkale.service.LoadMode.LOCAL