一、概念
1.什么是JMX:JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。
2.JMX的特点:JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。JMX是一种应用编程接口,可扩充对象和方法的集合体,可以用于跨越一系列不同的异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用它提供了用户界面指导、Java类和开发集成系统、网络及网络管理应用的规范。
3.JMX的优点:JMX可以非常容易的使应用程序具有被管理的功能;提供具有高度伸缩性的架构;主要提供接口,允许有不同的实现
4.JMX的详细内容:
http://www.itisedu.com/phrase/200604261751455.html(以上内容摘抄于此)
二、简单实例
1.建立一个需要被JMX管理的类Hello
package bcndly.test.jmx;
public class Hello implements HelloMBean {
private String name;
public String getName() {
return name;
}
public void printHello() {
System.out.println("Hello, " + name);
}
public void printHello(String theName) {
System.out.println("Hello, " + theName);
}
public void setName(String name) {
this.name = name;
}
}
2.建立Hello类的MBean接口,接口名必须是要管理的类名+MBean
package bcndly.test.jmx;
public interface HelloMBean {
public String getName();
public void setName(String name);
public void printHello();
public void printHello(String theName);
}
3.创建一个Agent类
package bcndly.test.jmx;
import javax.management.MBeanServer;
import javax.management.MBeanServerFactory;
import javax.management.ObjectName;
import com.sun.jdmk.comm.HtmlAdaptorServer;
public class HelloAgent {
public static void main(String[] args) throws Exception {
MBeanServer server = MBeanServerFactory.createMBeanServer();
ObjectName helloName = new ObjectName("bcndyl:name=HelloWorld");
server.registerMBean(new Hello(), helloName);
ObjectName adapterName = new ObjectName("HelloAgent:name=htmladapter,port=8091");
HtmlAdaptorServer adapter = new HtmlAdaptorServer();
server.registerMBean(adapter, adapterName);
adapter.start();
System.out.println("start.....");
}
}
说明:
- HtmlAdaptorServer在jmxtools.jar包中,需要到SUN网站下载JMX 1.2.1 Reference Implementation
- MBeanServer是一个包含所有注册MBean的仓库.它是JMX代理层的核心.JMX1.0规范提供一个接口叫 javax.management.MBeanServer. 所有管理的在MBean操作通过MBeanServer执行.使用MBeanServer实例,你能够管理所有MBean.每一个MBean具有一个唯一标志,叫ObjectName.
- ObjectName (javax.management.ObjectName)是一个类,唯一标志一个在MBeanServer的MBean.这个对象名称用于管理应用程序来标志MBean以便操作能够在适当的MBean上被调用.一个对象名称包含两部分:域名称和没有经过排序的一个或者多个关键属性集,语法:[domain name]:property=value[,property=value]
- AdaptorServer,这个类将决定MBean的管理界面,这里用最普通的Html型界面。AdaptorServer其实也是一个MBean
- 运行HelloAgent,打开IE输入http://localhost:8091就可以看到注册的MBean,在控制台看printHello的输出结果
分享到:
相关推荐
在这个“jmx简单实例”中,我们将会探讨JMX的基本概念,以及如何使用所提供的jar包来构建和运行一个简单的JMX示例。 1. **JMX基础** JMX由三部分组成:MBeans(Managed Beans)、Servers和Agents。MBeans代表管理...
对于初学者,这个"最简单JMX例子"将展示如何创建一个简单的MBean,如何在Eclipse这样的集成开发环境中配置和运行,以及如何通过标准的JMX客户端工具进行交互。通过学习这个例子,你可以理解JMX的基本结构和用法,为...
本篇文章将深入探讨JMX的核心概念、功能及如何通过一个小例子来理解和使用JMX。 **1. JMX核心概念** - **MBean(Managed Beans)**: MBean是JMX中最基本的管理单元,它是Java对象,代表可管理的资源或服务。MBean...
这个例子将探讨如何在实际应用中使用JMX来实现远程监控和管理功能。 首先,JMX允许开发者定义名为MBeans(Managed Beans)的对象,这些对象代表了可管理的资源,如系统状态、配置参数或服务性能指标。MBeans可以是...
6. **客户端示例**:项目可能还包含一个简单的客户端示例,展示了如何使用JMX API连接到MBean服务器,查询MBean信息,调用其操作,以及监控和改变MBean的属性。 通过分析`jmxdemo`项目的源代码,你可以学习如何创建...
JMX应用实例与实现,通过一个简单的JavaWeb应用来验证JMX在应用中的植入管理和应用
这个压缩包中的例子很可能是创建了一个简单的Spring应用,并且配置了JMX支持,展示如何将Spring的bean暴露为MBeans进行管理和监控。通过研究这些示例,新人可以更好地理解JMX和Spring如何协同工作,提升他们的Java...
一个简单的JMX应用通常由以下几个部分组成: - **MBean**:代表被管理的对象,实现特定的MBean接口。例如,Hello类实现了HelloMBean接口,提供getName、setName方法以及printHello方法。 - **MBeanServer**:负责...
在这个入门例子中,我们将深入探讨JMX的核心概念以及如何通过提供的源码实现一个简单的JMX应用。 首先,`HelloAgent.java`通常是实现JMX代理的类,这个代理负责注册MBeans(Managed Beans),这是JMX中的核心组件。...
在这个"jmx_examples.rar"压缩包中,包含了多个JMX的简单示例,这将帮助我们了解如何在Java 8中使用JMX。 1. **JMX基础知识**: - JMX的核心概念包括MBean(Managed Beans)、MBean Server和MBean操作。MBean是...
一个简单的JMX示例是创建一个名为`Hello`的类,该类实现了`HelloMBean`接口。`HelloMBean`定义了`getName()`和`setName()`方法,以及`printHello()`方法。`Hello`类中的这些方法允许外部管理工具获取和设置名称,...
1. **JMX与Spring 结合实例**:在Spring应用中,可以通过配置或者编程方式来注册MBeans(Managed Beans),这些MBeans代表了应用中的特定组件或服务。Spring 提供了`PlatformMBeanServer`的自动配置,可以方便地将...
总之,JMX与AMX的结合为Java开发者提供了一套强大而灵活的工具集,使得在复杂的企业级应用中实施管理和监控策略变得既简单又高效。无论是对于应用的日常运维还是故障排查,JMX和AMX都扮演着不可或缺的角色。
这通常涉及到查找并实例化适当的MBean服务器连接器,如JMXMP(JMX Message Protocol),RMI-JRMPI(Remote Method Invocation with Java Remote Management Interface)等,然后使用连接器连接到服务端。 VisualVM...
标题和描述均提到了“jmx第一个学习例子”,这标志着文章旨在引导读者通过一个实践性的示例理解Java Management Extensions(JMX)的基础概念和技术。JMX作为一项由Sun Microsystems(现Oracle)提出的技术,用于...
让我们通过一个简单的例子来了解JMX的工作流程: 1. 首先,定义一个MBean接口,比如`HelloWorldMBean`,包含一个返回字符串的属性`greeting`和一个输出问候的`sayHello`操作。 ```java public interface ...
下面给出一个简单的Mlet配置文件示例: ```xml ``` #### 创建MBeanServer实例 创建MBeanServer的代码如下所示: ```java MBeanServer lServer = null; lServer = MBeanServerFactory.createMBeanServer(); //...
这些例子可以帮助读者快速上手,理解如何创建、注册MBeans,如何通过MBean Server进行操作,以及如何设置和使用JMX连接器。通过实践,学习者可以更深入地掌握JMX的精髓。 总结来说,JMX是Java平台的重要管理工具,...
**概述**:本章节通过一个简单的“Hello World”案例介绍如何使用JMX进行基本的应用管理。 **详细解释**: - **创建MBean实例**:首先,需要定义一个实现`javax.management.MBean`接口的类,该类通常包含一系列...
在这个"jmx.zip_jmx html"文件中,包含的是一个JMX的简单实例,以HTML格式展示的JMX控制台。 首先,我们要理解JMX的核心概念。JMX由三个主要部分组成:MBeans(Managed Beans)、Servers和Clients。MBeans是JMX的...