zoukankan      html  css  js  c++  java
  • jms消息组成

    一个Message对象有三个部分:消息头,消息属性,消息体,消息头提供了和消息有关的元数据,消息属性可以携带由jms客户端设置的属性,jms消费者可以根据消息头和消息属性选择来选择接受消息

    消息头:包括自动分配的消息头及开发者分配的消息头

    public interface Message
    {
    
        public abstract String getJMSMessageID()
            throws JMSException;
    
        public abstract void setJMSMessageID(String s)
            throws JMSException;
    
        public abstract long getJMSTimestamp()
            throws JMSException;
    
        public abstract void setJMSTimestamp(long l)//jms提供者接受消息的时间
            throws JMSException;
    
        public abstract byte[] getJMSCorrelationIDAsBytes()
            throws JMSException;
    
        public abstract void setJMSCorrelationIDAsBytes(byte abyte0[])
            throws JMSException;
    
        public abstract void setJMSCorrelationID(String s)//开发者分配,将当前的id与之前的特定id进行关联
            throws JMSException;
    
        public abstract String getJMSCorrelationID()
            throws JMSException;
    
        public abstract Destination getJMSReplyTo()
            throws JMSException;
    
        public abstract void setJMSReplyTo(Destination destination)//开发者分配的消息头,表明jms消费者应该应答的地址
            throws JMSException;
    
        public abstract Destination getJMSDestination()
            throws JMSException;
    
        public abstract void setJMSDestination(Destination destination)//目的地
            throws JMSException;
    
        public abstract int getJMSDeliveryMode()
            throws JMSException;
    
        public abstract void setJMSDeliveryMode(int i)//持久性模式(消息不会丢失,默认)和非持久性模式
            throws JMSException;
    
        public abstract boolean getJMSRedelivered()
            throws JMSException;
    
        public abstract void setJMSRedelivered(boolean flag)//是否被重新传送
            throws JMSException;
    
        public abstract String getJMSType()
            throws JMSException;
    
        public abstract void setJMSType(String s)//开发者分配,消息类型
            throws JMSException;
    
        public abstract long getJMSExpiration()
            throws JMSException;
    
        public abstract void setJMSExpiration(long l)//一个message对象的有效期,在发送者上,可通过setTimeToLive(long l)设置该发送者发送的所有消息的时效,为0表示永不过期
            throws JMSException;
    
        public abstract int getJMSPriority()
            throws JMSException;
    
        public abstract void setJMSPriority(int i)//0-4普通优先级,5-9加急优先级,生产者可使用setPriority()方法声明
            throws JMSException;
    }

     消息属性:开发者可以自定义能满足他们需要的所有属性

    public abstract void clearProperties()
            throws JMSException;
    
        public abstract boolean propertyExists(String s)
            throws JMSException;
    
        public abstract boolean getBooleanProperty(String s)
            throws JMSException;
    
        public abstract byte getByteProperty(String s)
            throws JMSException;
    
        public abstract short getShortProperty(String s)
            throws JMSException;
    
        public abstract int getIntProperty(String s)
            throws JMSException;
    
        public abstract long getLongProperty(String s)
            throws JMSException;
    
        public abstract float getFloatProperty(String s)
            throws JMSException;
    
        public abstract double getDoubleProperty(String s)
            throws JMSException;
    
        public abstract String getStringProperty(String s)
            throws JMSException;
    
        public abstract Object getObjectProperty(String s)
            throws JMSException;
    
        public abstract Enumeration getPropertyNames()
            throws JMSException;
    
        public abstract void setBooleanProperty(String s, boolean flag)
            throws JMSException;
    
        public abstract void setByteProperty(String s, byte byte0)
            throws JMSException;
    
        public abstract void setShortProperty(String s, short word0)
            throws JMSException;
    
        public abstract void setIntProperty(String s, int i)
            throws JMSException;
    
        public abstract void setLongProperty(String s, long l)
            throws JMSException;
    
        public abstract void setFloatProperty(String s, float f)
            throws JMSException;
    
        public abstract void setDoubleProperty(String s, double d)
            throws JMSException;
    
        public abstract void setStringProperty(String s, String s1)
            throws JMSException;
    
        public abstract void setObjectProperty(String s, Object obj)
            throws JMSException;
    
        public abstract void acknowledge()
            throws JMSException;
    
        public abstract void clearBody()
            throws JMSException;

    消息类型

    TextMessage,ObjectMessage,BytesMsssage,StreamMessage,MapMessage

  • 相关阅读:
    【DL-2-2】卷积神经网络(CNN)--AlexNet、ZFNet、VGGNet、GoogleNet、ResNet
    Python3 错误和异常-(try/except/else/finally/raise/assert)
    生成器 Generators
    Map,Filter 和 Reduce
    装饰器
    目标检测:介绍及传统方法
    【ML-17-2】MCMC--马尔可夫蒙特卡罗方法(MH和Gibbs)
    如何在JDK1.8中愉快地处理日期和时间
    luogu1447 能量采集
    luogu1775 古代人的难题 打表找规律
  • 原文地址:https://www.cnblogs.com/qilong853/p/6588999.html
Copyright © 2011-2022 走看看