Weblogic JMS

简介

全称:WebLogic Server的Java Messaging Service(JMS)
WebLogic JMS 是与 WebLogic Server 平台紧密集成的企业级消息传递系统。
Java Message Service (JMS) API 是一种消息传递标准,允许基于 Java Platform Enterprise Edition (Java EE) 的应用程序组件创建、发送、接收和读取消息。它实现了松散耦合、可靠和异步的分布式通信。

JMS 的具体功能包括

  • 可在共享消息系统的 Java 应用程序之间交换消息
  • 用于创建、发送和接收消息的标准接口便于应用程序开发

JMS 支持两种消息传递模式:点对点 (PTP) 和发布/订阅。
WebLogic JMS 服务器架构的关键组件包括

  • 可托管一组预定义模块及其相关持久存储(位于 WebLogic Server 实例中)的 JMS 服务器。
  • 配置资源(查询、主题、连接工厂等),包括根据 http://xmlns.oracle.com/weblogic/weblogic-jms/1.4/weblogic-jms.xsd架构XML文档定义的JMS模块。
  • 客户端 JMS 应用程序。 向目的地生成消息或从目的地消费消息。
  • Java 命名和目录接口 (JNDI),提供资源查找功能。 JNDI 名称用于 JMS 资源(如连接工厂和目的地)的配置。
    这些资源的运行时实现使用特定名称绑定到 JNDI。
  • WebLogic 持久存储(文件存储或支持 JDBC 的数据库)用于存储持久消息数据。

后文介绍如何配置JMS以及使用对应API实现送收信息。

创建持久存储

WebLogic Console ->Services->Persistent Stores,中新建FileStore
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建JMS server

webLogic Console->Servcies->Messaging->JMS Servers新建JMS Server
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置消息通信JNDI

Servcies->Messaging->JMS Modules中新建JMS 模块
在这里插入图片描述
在这里插入图片描述
配置文件具体保存位置参考如下
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进入新追加的JMS模块,在Subdeployments 中新建Subdeployment
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述进入新追加的jms_test_module2的Configuration中,新建资源。
在这里插入图片描述
资源类型选择连接工厂
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
继续新建资源,这次选择队列
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
继续新建资源,这次选择Topic
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

送收信代码实装

队列送信

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Hashtable;import javax.jms.*;
import javax.naming.*;public class QueueMsgSender {private final static String JNDI_FACTORY = "weblogic.jndi.WLInitialContextFactory";private final static String PROVIDER_URL = "t3://192.168.56.106:7001";private final static String JMS_FACTORY = "jms/jms_test_connection_factory1";private final static String JNDI_QUEQUE = "jms/jms_test_queue";private QueueConnectionFactory connectionFactory;private QueueConnection queueCon;private QueueSession qSession;private Queue queue;private QueueSender sender;private ObjectMessage objectMessage;public void init(Context ctx, String queueName)throws NamingException, JMSException {connectionFactory = (QueueConnectionFactory) ctx.lookup(JMS_FACTORY);queueCon = connectionFactory.createQueueConnection();//false: 将会话标记为非事务性的.非事务性的会话会立即发送消息。//Session.AUTO_ACKNOWLEDGE: 表示当客户端成功的从receive方法返回后,或者是在消息监听器成功返回后,会话会自动确认消息的接收qSession = queueCon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);//通过JNDI查找送信目标队列queue = (Queue)ctx.lookup(queueName);//使用会话和目标(队列)创建消息生产者(队列发送者)的引用sender = qSession.createSender(queue);//开始连接queueCon.start();}public void sendMsg(String msg) throws JMSException {User user = new User();user.setName(msg);user.setAge(18);objectMessage = qSession.createObjectMessage();objectMessage.setObject(user);sender.send(objectMessage);}public void readAndSend() throws IOException, JMSException {BufferedReader msgStream = new BufferedReader(new InputStreamReader(System.in));boolean quitNow = false;do {System.out.print("Enter message (\"quit\" to quit): \n");String line = msgStream.readLine();if (line != null && line.trim(

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/4023.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DiffSpeaker 部署踩坑笔记

目录 依赖项: Windows环境下安装psbody 下载安装boost 编译安装psbody 保存mp4报错解决 语音驱动的3D面部动画,可以用扩散模型或Transformer架构实现。然而它们的简单组合并没有性能的提升。作者怀疑这是由于缺乏配对的音频-4D数据,这对…

windows rabbitMq安装

一、Erlang 环境准备 下载安装包 跟我们跑java项目,要装jdk类似。rabbitMQ是基于Erlang开发的,因此安装rabbitMQ服务器之前,需要先安装Erlang环境。 官网直接下载windows直装版本:https://www.erlang.org/downloads 无脑安装&a…

【RocketMQ知识点总结-1】

文章目录 RocketMQ介绍RocketMQ架构:NameServer:BrokerProducerTopic(主题):Queue(队列):Message(消息): RocketMQ的工作流程RocketMQ的使用场景异步消息传递…

预训练扩散模型用于即插即用的医学图像增强

文章目录 Pre-trained Diffusion Models for Plug-and-Play Medical Image Enhancement摘要本文方法Image Enhancement with Denoising AlgorithmPre-Trained Diffusion Models for Plug-and-play Medical Image Enhancement 实验结果 Pre-trained Diffusion Models for Plug-a…

CentOS安装SonarQube

系列文章目录 文章目录 系列文章目录前言前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 sonar是一款静态代码质量分析工具,支持Java、Python、PHP、JavaScript、…

C++ | Leetcode C++题解之第51题N皇后

题目&#xff1a; 题解&#xff1a; class Solution { public:vector<vector<string>> solveNQueens(int n) {auto solutions vector<vector<string>>();auto queens vector<int>(n, -1);auto columns unordered_set<int>();auto diag…

【redis】Redis数据类型(二)Hash类型

目录 Hash类型介绍特性hash 的内部编码方式/底层结构hashtableziplistlistpack 适用场景举例 常用命令hset示例 hsetnx示例&#xff1a; hmset示例 hget示例 hmget示例 hgetall示例 hdel示例 hlen示例 hexists示例 hincrby示例 hincrbyfloat示例 hkeys示例 hvals示例 Hash类型介…

光纤网络电力控制系统设计方案:623-6U CPCI的光纤网络电力控制系统

6U CPCI的光纤网络电力控制系统 一、设备概述 柔性直流输电系统中用于控制与测量的FS系统&#xff0c;适用于风电和太阳能发电的并网快速数值计算和闭环控制&#xff0c;以及与直流输电系统的换流器有关的特殊控制功能&#xff0c;包括门控单元的信号处理。该控制板的最大…

Oracle时间函数

1. 时区 先说下时区&#xff0c;oracle时区分两种&#xff1a;数据库时区和会话时区。 查看数据库的时区&#xff1a;select dbtimezone from dual; 设置数据库时区&#xff1a;创建时指定&#xff1a;create database db1... set time_zone6:00; 或后期修改&#xff1a;alter…

谷歌TPU(Tensor Processing Unit)

谷歌TPU&#xff08;Tensor Processing Unit&#xff09; https://cloud.google.com/tpu/docs/intro-to-tpu?hlzh-cn CPU的工作模式和GPU工作模式的区别 CPU 最大的优点是它们的灵活性。您可以在 CPU 上为许多不同类型的应用加载任何类型的软件。对于每次计算&#xff0c;CPU…

推荐免费的RVC模型下载网站

前沿 近年来&#xff0c;随着人工智能与计算机生成内容&#xff08;AICG&#xff09;技术的飞速发展&#xff0c;众多人才纷纷投身于这一领域。从ChatGPT到Stable Diffusion&#xff0c;再到RVC&#xff0c;这些广为人知的AI技术正逐步改变我们的生产方式。众所周知&#xff0…

【C++】:手撕红黑树(红黑树的模拟实现)

每日给大家介绍一家公司 如下 接下来我们进入正题 1.红黑树的概念 红黑树&#xff0c;是一种二叉搜索树&#xff0c;但在每个结点上增加一个存储位表示结点的颜色&#xff0c;可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制&#xff0c;红黑树…

2024蓝桥杯CTF--逆向

蓝桥杯付费CT--逆向 题目&#xff1a;RC4题目&#xff1a;happytime总结&#xff1a; 题目&#xff1a;RC4 先查壳&#xff0c;无壳&#xff0c;并且是32位&#xff1a; 用32位的ida打开&#xff0c;直接定位到main函数&#xff1a; 重点关注sub_401005函数&#xff0c;这个应…

SDM模型——建模用户长短期兴趣的Match模型

1. 引言 SDM模型(Sequential Deep Matching Model)是阿里团队在2019年CIKM的一篇paper。模型属于序列召回模型&#xff0c;研究的是如何通过用户的历史行为序列去学习到用户的丰富兴趣。 SDM模型把用户的历史序列根据交互的时间分成了短期和长期两类&#xff0c;然后从短期会…

hwte git GitHub

电脑重装系统或者第一次配置HWTE Git&#xff0c;需要配置hosts文件 配置hosts 文件 1、先检查host文件&#xff1a;vim(sudo vim) /etc/hosts&#xff0c;是否配置了如下内容&#xff0c;没有的话&#xff0c;将如下内容加进去&#xff0c; #Radar hosts 17.34.114.138 atla…

构建NodeJS库--前端项目的打包发布

1. 前言 学习如何打包发布前端项目&#xff0c;需要学习以下相关知识&#xff1a; package.json 如何初始化配置&#xff0c;以及学习npm配置项&#xff1b; 模块类型type配置&#xff0c; 这是nodejs的package.json的配置main 入口文件的配置 webpack 是一个用于现代 JavaSc…

【动态规划】Leetcode 416. 分割等和子集【中等】

分割等和子集 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集&#xff0c;使得两个子集的元素和相等。 示例 1&#xff1a; 输入&#xff1a;nums [1,5,11,5] 输出&#xff1a;true 解释&#xff1a;数组可以分割成 [1, 5, 5] 和 [1…

正则表达式的常见语法

目录 一、基本的正则表达式语法 1.1 字符类 1.2 单个字符的特殊表示 1.3 量词表示 1.4 边界匹配 1.5 分组与捕获 二 、java中的使用 在Java中使用正则表达式进行字符串匹配可以说是一个很重要的技能&#xff0c;尤其对于需要进行文本处理或者字符替换的程序来说&#xff0…

基于java+springboot+vue实现的个人博客系统(文末源码+Lw)200

摘 要 随着国内市场经济这几十年来的蓬勃发展&#xff0c;突然遇到了从国外传入国内的互联网技术&#xff0c;互联网产业从开始的群众不信任&#xff0c;到现在的离不开&#xff0c;中间经历了很多挫折。本次开发的个人博客系统&#xff0c;有管理员&#xff0c;用户&#xf…

excel一列同乘同一个数

excel一列同乘同一个数 第一种方法&#xff08;excel本身功能&#xff09; 在空白区域输入要乘以的数&#xff0c;比如0.5 右键选择复制 选中需要乘以的单元格&#xff0c;选择性粘贴 点击乘&#xff0c;选择确定 删除0.5后也不会改变值 第二种方法&#xff08;方方格子…