JMX简单示例

以下文章摘自网络仅供学习用

1.编写一个以MBean结尾的接口SimpleStandardMBean:

public interface SimpleStandardMBean {

public void setName(String name);

public String getName(String name);

public void reSet();

public int getAge();
}

2.编写实现类SimpleStandard:

public class SimpleStandard implements SimpleStandardMBean{

public String name;
public int getAge() {
return 24;
}

public String getName(String name) {
this.name=name;
System.out.println("----------调用了getName方法----------");
return this.name;
}

public void reSet() {
System.out.println("----------reSet()-----------");
}

public void setName(String name) {
this.name=name;
}

public void aaa(){
System.out.println("888888888888888888888");
}

}

3.编写服务端,把SimpleStandard注册到MBean中:

import java.net.MalformedURLException;
import java.util.HashMap;
import java.util.Map;
import javax.management.MBeanServer;
import javax.management.MBeanServerFactory;
import javax.management.ObjectName;
import javax.management.remote.JMXConnectorServer;
import javax.management.remote.JMXConnectorServerFactory;
import javax.management.remote.JMXServiceURL;

public class Server {

public static void main(String[] args) {

MBeanServer mbServer=MBeanServerFactory.createMBeanServer();
System.out.println("------MBean服务器创建成功--------");
String defaultDomain=mbServer.getDefaultDomain();
SimpleStandard simpleStandard=new SimpleStandard();
ObjectName objectname=null;
try {
objectname=new ObjectName(defaultDomain+":name=guyong");
mbServer.registerMBean(simpleStandard, objectname);
System.out.println("-------向MBean注册成功--------");
} catch (Exception e) {
e.printStackTrace();
}

/**
* 创建一个jmx连接服务器
*/
try {
JMXServiceURL jmxurl=new JMXServiceURL("service:jmx:jms:///tcp://192.9.200.200:61616");
Map<String ,String> map=new HashMap();
map.put("jmx.remote.protocol.provider.pkgs", "org.logicblaze.lingo.jmx.remote.provider");
JMXConnectorServer jmxConServer=JMXConnectorServerFactory.newJMXConnectorServer(jmxurl, map, mbServer);
System.out.println("--------JMX连接服务器创建成功--------");
System.out.println("--------启动JMX服务----------");
jmxConServer.start();
System.out.println("--------启动成功-------------");
} catch (Exception e) {
e.printStackTrace();
}

}
}

4.编写客户端,调用服务端注册的类中的方法:

import java.util.HashMap;
import java.util.Map;
import javax.management.MBeanServerConnection;
import javax.management.ObjectName;
import javax.management.remote.JMXConnector;
import javax.management.remote.JMXConnectorFactory;
import javax.management.remote.JMXServiceURL;

public class Client {
public static void main(String[] args) {
try {
//创建jmx连接
JMXServiceURL jmxUrl=new JMXServiceURL("service:jmx:jms:///tcp://192.9.200.200:61616");
Map<String ,String> map=new HashMap();
map.put("jmx.remote.protocol.provider.pkgs", "org.logicblaze.lingo.jmx.remote.provider");
JMXConnector jmxConn=JMXConnectorFactory.connect(jmxUrl,map);
//获得MBean服务连接
MBeanServerConnection mbsConn=jmxConn.getMBeanServerConnection();
String defaultDedomain=mbsConn.getDefaultDomain();
ObjectName objname=null;
objname=new ObjectName(defaultDedomain + ":name=guyong");
Object[] para={"guyong"};//参数名
String[] paraType={"java.lang.String"};//参数类型
Object str=mbsConn.invoke(objname, "getName", para, paraType);//调用服务端的方法
System.out.println("name=" + str.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}

JMX模型MBean示例 NULL 博文链接:https://jasonhan-sh-hotmail-com.iteye.com/blog/1171904 立即下载

相关推荐

【万字长文】学习Armv8架构虚拟化一篇就够了

这里我们将介绍一些基础的Hypervisor和虚拟化的理论知识。如果你已经有一定的基础或是已经熟悉了这些概念,可以跳过这部分内容。我们用Hypervisor这个词来定义一种负责创建,管理以及调度虚拟机(Virtual Machines, VMs)的软件。Stage 2 转换允许Hypervisor控制虚拟机的内存视图。具体来说,其可以控制虚拟机是否可以访问特定的某一块物理内存,以及该内存块出现在虚拟机内存空间的位置。这种能力对于虚拟机的隔离和沙箱功能来说至关重要。

叫好与叫座虽然不是对立面,但想在同一个作品中达到双重效果很难。 5312

最简单jmx示例

1.编写一个以MBean结尾的接口SimpleStandardMBean: public interface SimpleStandardMBean {  public void setName(String name);   public String getName(String name);   public void reSet();   public int getAge()

星辰的专栏 1389

Jitsi Meet保姆级自建教程:5分钟搞定私有化视频会议服务器(含Docker部署避坑指南)

本文提供了一份详尽的Jitsi Meet私有化视频会议服务器自建教程。通过Docker Compose部署方案,在5分钟内即可搭建基础服务,并深入解析了SSL/TLS证书配置、TURN服务器优化等关键步骤,确保部署的安全与可扩展性,为企业构建自主可控的远程协作平台提供完整指南。

weixin_29305337的博客 620

什么是MBean?

Managed Bean (MBean) 描述一个可管理的资源.是一个java对象,遵循以下一些语义.java对象的属性(property)叫属性(attribute),方法(method)叫操作(operations).定义MBean一个MBean的语义必须是公用的,非抽象的类 必须有至少一个公用的构造器 必须实现它自己的相应的MBean接口或者实现javax.management.

数据就是一切 1万+

用Python+OpenCV给斗地主做个‘外挂’:手把手教你写个桌面记牌器(附源码)

本文详细介绍了如何使用Python和OpenCV开发一个智能斗地主记牌器,包括环境搭建、图像采集与预处理、扑克牌识别技术及PyQt5界面设计。通过实战案例,帮助开发者掌握图像处理与界面开发的结合应用,提升游戏辅助工具的编写能力。

weixin_29079643的博客 545

《从0到1:CTFer成长之路》书籍配套题目-[第二章 web进阶]文件上传

[第二章 web进阶]文件上传开始行动绕过第1个限制绕过第2个限制 介绍:记录一下笔记,方便以后迅速回忆使用。 《从0到1:CTFer成长之路》书籍配套题目,来源网站:《从0到1:CTFer成长之路》 先看一下题目源码: <?php header("Content-Type:text/html; charset=utf-8"); // 每5分钟会清除一次目录下上传的文件 require_once('pclzip.lib.php'); if(!$_FILES){ echo '

weixin_46703850的博客 3410

JMX使用详解

JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。JMX在Java编程语言中定义了应用程序以及网络管理和监控的体系结构、设计模式、应用程序接口以及服务。通常使用JMX来监控系统的运行状态或管理系统的某些方面,比如清空缓存、重新加载配置文件等。JMX的主要作用是提供接口,允许有不同的实现。

技术人集结地 3967

别再乱改grub.cfg了!手把手教你用GRUB2自定义多系统启动菜单(含UEFI/BIOS双模式配置)

本文详细介绍了如何安全、高效地使用GRUB2自定义多系统启动菜单,涵盖UEFI/BIOS双模式配置。通过避免直接编辑grub.cfg文件,采用正确的配置方法和命令,帮助用户打造稳定且美观的启动环境,特别适合Linux多系统用户和开发者。

weixin_42553471的博客 590

在WebLogic Server上驯服JMX

让我们先假设几件事: 我假设您听说过Java的JMX功能并熟悉它的功能(远程公开和管理您的服务)。 您应该知道默认JVM将具有一个可以注册MBean的Platform MBeanServer实例。 您可以使用JDK中的jconsole命令查看它们。 到目前为止,我认为到目前为止,可以将应用程序中的任何服务公开给JMX MBeanServer的最简单方法是使用Spring的导出器。 ...

最佳 Java 编程 469

java实现mavlink协议解析与封包上传数据,实现mavlink数据交互,附带代码、详解

本篇文章介绍了使用java来进行mavlink协议解析,封包与解包的过程,并附带源码供大家使用。MAVLink(Micro Air Vehicle Link,微型空中飞行器链路通讯协议)是无人飞行器与地面站(Ground Control Station ,GCS)或云端服务器之间通讯,以及无人飞行器之间通讯最常用的协议。它已经在PX4、APM、PIXHAWK和Parrot AR.Drone飞控平台上进行了大量测试。

qq_30279827的博客 1448

S7-1200PLC V90伺服绝对值编码器校准功能块

S7-1200PLC通过111报文和EPOS模式实现位置轴轴控功能(FB284封装)-优快云博客文章浏览阅读173次。EASY_SINA_POS的详细使用介绍请参考下面文章链接:S7-1200PLC使用标准报文111和EPOS模式实现V90 PN总线伺服定位(Easy_SINA_Pos)_西门子sinapos-优快云博客文章浏览阅读132次。文章浏览阅读7k次。先简单说下如何获取FB284,一般有2种方法,Startdrive软件可以操作大部分西门子的驱动器,建议安装调试方便,缺点就是软件太大。

RXXW_Dor的博客 968

JMX的简单示例

首先贴三个代码文件  Hello, HelloMBean, HelloAgent -------------------------------------------------- Hello.java public class Hello implements Hell

heyetina的专栏 719

SOC估算方法之(OCV-SOC+安时积分法)

此方法主要参考。

m0_61973119的博客 934

JMX的简单示例 后续

熟悉了JMX后,遇到的问题是MBean位于远程服务器上,访问需要使用RMI,刚好JMX也提供RMI的方法 以上一篇提到的JMX示例HelloAgent.java为基础 import java.lang.management.ManagementFactory; im

heyetina的专栏 1197

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

JMX在Tomcat的应用

一、 JMX 简单介绍  Tomcat 从 5.0 版本开始引入 JMX ,力图使 JMX 成为 Tomcat 未来版本的管理工具和平台。首先,让我们来对 JMX 做一个简单了解。 JMX 是 Java Management Extension 的缩写,可译为 Java 管理工具扩展,扩展的意思就是 JMX 不包含在标准的 J2SE 中,我们必须要另外下载 JMX RI 的实现。不过,这

一次次成长的过程 2202

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Spring 下透明的让POJO 变为支持JMX的MBean

    Spring 1.2不多的几样更新之一就是对JMX的支持。    通过简单的XML配置文件,把POJO山鸡变凤凰Export成MBean,使客户可以通过JMX Client调用POJO的方法,查看POJO的属性和状态。    这种集成方式与Spring对Quartz的集成一样,透明、简单,很值得在Framework界提倡。    例子在Spring自带的samples/petlinc里面,

花钱的年华 2682

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

JMX简介

一、什么是JMX JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和服务实现管理。 JMX的前身是JMAPI。 JMX致力于解决分布式系统管理的问题,因此,能够适合于各种不同的环境是非常重要的。为了能够利用功能强大的Java计算环境解决这一的问题,Sun公司扩充了Ja

honnom的专栏 6832

jmx入门及开发示例

官方介绍:http://docs.oracle.com/javase/1.5.0/docs/guide/jmx/overview/JMXoverviewTOC.html   JMX(Java Management Extensions) 是来管理网络,设备,应用程序等资源,它描述了一个可扩展的管理体系结构,并且提供了 JMX API 和一些预定义的 java 管理服务。 通过JMX可...

maimode的专栏 266

java解析jmx文件_[转]Java之JMX 详解

一、JMX简介JMX是一种JAVA的正式规范,它主要目的是让程序有被管理的功能,那么怎么理解所谓的“被管理”呢?试想你开发了一个软件(如WEB网站),它是在24小时不间断运行的,那么你可能会想要“监控”这个软件的运行情况,比如收到了多少数据,有多少人登录等等。或者你又想“配置”这个软件,比如现在访问人数比较多,你想把数据连接池设置得大一些。当然,你也许会专门为这些管理来开发软件,但如果你借助JMX...

weixin_31008853的博客 1531

JMX HelloWorld实例

原文地址:http://qun.51.com/bc123/topic.php?pid=4525例子可以运行  什么是JMX?在一篇网文中是这样说的:"JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和服务实现管理",这句话我现在看着还是不知所云,云里雾里。

HI,我是小瑞! 2181

Java之JMX

 [动态修改程序的配置的思想值得学习!]    一、JMX简介   JMX是一种JAVA的正式规范,它主要目的是让程序有被管理的功能,那么怎么理解所谓的“被管理”呢?试想你开发了一个软件(如WEB网站),它是在24小时不间断运行的,那么你可能会想要“监控”这个软件的运行情况,比如收到了多少数据,有多少人登录等等。或者你又想“配置”这个软件,比如现在访问人数比较多,你想把数据连接池设置得大一些...

weixin_34009794的博客 224

JMX详解

一、模型JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架,JMX的核心类是MBean(准确说是接口),用来描述一个可管理的资源JMX的三层架构图650) this.width=650;" alt="" src="http://dl2.iteye.com/upload/attachment/0086/6158/91e

jethai的博客 813

JMX的Hello World

1、JMX的Hello World  一、JMX简介   什么是JMX?在一篇网文中是这样说的:"JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和服务实现管理",这句话我现在看着还是不知所云,云里雾里。   我们还是从JMX能给我们提供什么好处入手

好读书,每有会意,便欣然忘食。 548

JMX RMI相关

JMX trail: http://docs.oracle.com/javase/tutorial/jmx/index.html Server (MBean --> Agent ) --> Client JMX RMI example : http://docs.oracle.com/javase/tutorial/jmx/remote/custom.html 其中,

学习笔记 723
上一篇: 动态表单操作
下一篇: Sping 代理配置
smartfirstme
博客等级 码龄18年 1粉丝 179原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值