当前位置: 首页 > wzjs >正文

在相亲网站做红娘百度推广一年要多少钱

在相亲网站做红娘,百度推广一年要多少钱,广州知名网站推广,重庆建一个网站大概要多少钱(三)消息结构与 API 操作 JMS 消息结构:JMS 消息主要由消息头(Header)、属性(Properties)和消息体(Body)三部分组成。消息头包含了许多预定义的字段,用于标识…

(三)消息结构与 API 操作

  1. JMS 消息结构:JMS 消息主要由消息头(Header)、属性(Properties)和消息体(Body)三部分组成。消息头包含了许多预定义的字段,用于标识消息、设置优先权、失效时间等,例如 JMSMessageID 用于唯一标识一条消息,JMSDeliveryMode 用于指定消息的投递模式(持久或非持久),JMSPriority 用于设置消息的优先级,JMSTimestamp 用于记录消息发送的时间,JMSExpiration 用于设置消息的过期时间等 。这些字段由 JMS Provider 在消息发送时自动填充或根据发送者的设置进行配置 。属性部分允许开发者自定义一些键值对,用于添加额外的信息,比如消息的业务类型、处理标志等,这些属性可以在消息的发送和接收过程中被使用,方便对消息进行分类和处理 。消息体则是消息的实际内容,根据不同的消息类型,消息体的结构和内容也不同,JMS 提供了多种消息类型,如 TextMessage 用于发送文本消息,MapMessage 用于发送键值对形式的消息,BytesMessage 用于发送字节数组消息,StreamMessage 用于发送 Java 原始类型的数据流消息,ObjectMessage 用于发送可序列化的 Java 对象消息 。
  1. API 操作示例:通过代码示例展示创建、发送、接收不同类型消息的操作。
创建并发送 TextMessage
 

import javax.jms.Connection;

import javax.jms.ConnectionFactory;

import javax.jms.MessageProducer;

import javax.jms.Queue;

import javax.jms.Session;

import javax.jms.TextMessage;

import org.apache.activemq.ActiveMQConnectionFactory;

public class TextMessageProducer {

public static void main(String[] args) throws Exception {

ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");

Connection connection = factory.createConnection();

connection.start();

Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

Queue queue = session.createQueue("textQueue");

MessageProducer producer = session.createProducer(queue);

TextMessage message = session.createTextMessage("This is a text message");

// 设置自定义属性

message.setStringProperty("messageType", "text");

producer.send(message);

System.out.println("Sent text message: " + message.getText());

producer.close();

session.close();

connection.close();

}

}

接收 TextMessage
 

import javax.jms.Connection;

import javax.jms.ConnectionFactory;

import javax.jms.Message;

import javax.jms.MessageConsumer;

import javax.jms.Queue;

import javax.jms.Session;

import javax.jms.TextMessage;

import org.apache.activemq.ActiveMQConnectionFactory;

public class TextMessageConsumer {

public static void main(String[] args) throws Exception {

ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");

Connection connection = factory.createConnection();

connection.start();

Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

Queue queue = session.createQueue("textQueue");

MessageConsumer consumer = session.createConsumer(queue);

Message message = consumer.receive();

if (message instanceof TextMessage) {

TextMessage textMessage = (TextMessage) message;

System.out.println("Received text message: " + textMessage.getText());

// 获取自定义属性

System.out.println("Message type: " + textMessage.getStringProperty("messageType"));

}

consumer.close();

session.close();

connection.close();

}

}

创建并发送 MapMessage
 

import javax.jms.Connection;

import javax.jms.ConnectionFactory;

import javax.jms.MessageProducer;

import javax.jms.Queue;

import javax.jms.Session;

import javax.jms.MapMessage;

import org.apache.activemq.ActiveMQConnectionFactory;

public class MapMessageProducer {

public static void main(String[] args) throws Exception {

ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");

Connection connection = factory.createConnection();

connection.start();

Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

Queue queue = session.createQueue("mapQueue");

MessageProducer producer = session.createProducer(queue);

MapMessage message = session.createMapMessage();

message.setString("key1", "value1");

message.setInt("key2", 123);

// 设置自定义属性

message.setStringProperty("messageType", "map");

producer.send(message);

System.out.println("Sent map message");

producer.close();

session.close();

connection.close();

}

}

接收 MapMessage
 

import javax.jms.Connection;

import javax.jms.ConnectionFactory;

import javax.jms.Message;

import javax.jms.MessageConsumer;

import javax.jms.Queue;

import javax.jms.Session;

import javax.jms.MapMessage;

import org.apache.activemq.ActiveMQConnectionFactory;

public class MapMessageConsumer {

public static void main(String[] args) throws Exception {

ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");

Connection connection = factory.createConnection();

connection.start();

Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

Queue queue = session.createQueue("mapQueue");

MessageConsumer consumer = session.createConsumer(queue);

Message message = consumer.receive();

if (message instanceof MapMessage) {

MapMessage mapMessage = (MapMessage) message;

System.out.println("Received map message");

System.out.println("Value of key1: " + mapMessage.getString("key1"));

System.out.println("Value of key2: " + mapMessage.getInt("key2"));

// 获取自定义属性

System.out.println("Message type: " + mapMessage.getStringProperty("messageType"));

}

consumer.close();

session.close();

connection.close();

}

}

消息结构在 API 操作中的作用至关重要。消息头中的字段为消息的传输和处理提供了基本的控制信息,例如通过设置 JMSPriority 可以让重要的消息优先被处理,设置 JMSExpiration 可以避免消息长时间占用资源。属性部分则增强了消息的灵活性和可扩展性,开发者可以根据业务需求添加各种自定义信息,方便在消息处理过程中进行判断和操作。消息体则承载了实际的业务数据,不同的消息类型适用于不同的业务场景,例如 TextMessage 适合传输文本内容,MapMessage 适合传输结构化的键值对数据 。

http://www.dtcms.com/wzjs/179775.html

相关文章:

  • 微信支付 公司网站东莞网站推广及优化
  • 集团公司网站建设策划方案下载优化大师app
  • 昆明建设局网站郑州seo顾问外包
  • 网站改版灵感库求个网站
  • 电商网站的程序有哪些系统优化app最新版
  • dedecms 做门户网站app拉新渠道商
  • 一键wordpress建站品牌策划与推广
  • 怎么建设一个电影资源网站解析网站下载免费软件
  • 如何快速做网站关键词网络推广优化服务
  • 如何选择顺德网站建设网站推广营销的步骤
  • 西安网站建设seo产品推广方式及推广计划
  • 做系统去哪个网站网站优化关键词排名
  • 网站开发需要多少钱app站长百度
  • 公众号设计平台成都百度推广优化创意
  • 网站做web服务器百度怎么联系客服
  • 中山如何制作网站网络黄页平台网址有哪些
  • wordpress wp_logout_url提升seo排名的方法
  • 做网站中心seo优化公司如何做
  • 昆明房产网站建设哪个浏览器看黄页最快夸克浏览器
  • 安平网站建设网站优化排名推荐
  • 网站媒体推广方案seo优化网站技术排名百度推广
  • 云课堂哪个网站做的好杭州优化公司多少钱
  • 怎样用html制作网站谈谈自己对市场营销的理解
  • 网站怎么做搜狗排名新乡seo公司
  • 微信投票网站制作百度seo公司兴田德润
  • 教育视频培训网站建设小红书seo优化
  • 专门做品牌折扣的网站有哪些百度热搜排名
  • 第二代营销网站郑州厉害的seo优化顾问
  • 制作网站river没干过网络推广能干吗
  • 网站禁止访问目录小学生班级优化大师