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

  • 相关阅读:
    【代码笔记】Java连连看项目的实现(1)——JTable 、TableModel的使用
    【代码笔记】多线程游戏开发——伏魔记:第一步——开始游戏界面实现(一)
    【代码笔记】Java基础:Java的方法和类
    【代码笔记】Java基础:类的继承(构造器)
    【代码笔记】XML深入学习:DTD约束与DTD语法(2)
    常见标签的全称
    CSS中margin与padding的区别
    jquery 执行语句无响应
    jquery autocomplete插件结合ajax使用
    在使用flask_Bootstrap的时候先加载了jquery-ui然后再加载jQuery,导致jQuery-ui无法使用。
  • 原文地址:https://www.cnblogs.com/qilong853/p/6588999.html
Copyright © 2011-2022 走看看