- 浏览: 504025 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (285)
- 数据库 (49)
- dwr (1)
- js (35)
- security (6)
- freemaker (4)
- 网站建设 (15)
- css (5)
- javaEE (56)
- 生活点滴 (12)
- 安装与配置 (16)
- ssh2 (13)
- 开源软件 (6)
- web 应用服务器 (6)
- 开发模式和设计模式 (2)
- linux (5)
- 项目管理 (7)
- 计算机杂症 (0)
- appScan (1)
- idea (3)
- android (1)
- java @override 报错处理 (1)
- lucene (5)
- java (2)
- groovy (1)
- Extjs (7)
- asp (2)
- php (2)
- Memcached (1)
- 名言 (1)
- 面试 (1)
- Jmeter (0)
- 微信支付 (1)
- app开发 (1)
- branch分支合并到trunk主干 (1)
- 自动化测试 (1)
- springClond (1)
- ELK (2)
最新评论
-
skykufo:
坑爹啊,我也因为写多了一个div,在ie8浪费了一天
jQuery加载(load、get、post)页面显示空白原因 -
yeyinzhu3211:
帅哥,我想问下,是怎么去除呀?能详细说明下吗?
IntelliJ IDEA 10.5.1 无法断点或停止不动 -
sshitaime:
怎么下载不了啊,能给我一个安装包吗
oracle 10g透明网关组件下载地址(新) -
fuanyu:
xiaohuafyle 写道被你的头像吓尿了 哥们有这么可怕呀 ...
netstat -aon -
wanlt_software:
谢谢。。。。。
oracle 10g透明网关组件下载地址(新)
转:http://lveyo.iteye.com/blog/205665
JMX简单实例
关键字: jmx
一、概念
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
2.建立Hello类的MBean接口,接口名必须是要管理的类名+MBean
3.创建一个Agent类
说明:
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;
- }
- }
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);
- }
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.....");
- }
- }
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的输出结果
发表评论
-
java 模拟微信浏览器http请求
2020-12-16 08:49 920public static void main(St ... -
java 小数点处理的问题
2015-08-22 16:23 779float num= (float)1/100 ... -
java操作excel 替换指定字符串
2014-12-26 10:27 5304根据excel模板里设置指定的num0,num1,num2 ... -
itext对水印图片的旋转、放大、缩小等操作的示例
2014-07-24 17:17 5799package test1; import java. ... -
java 获取ip
2014-04-25 16:38 858public static String getIpAddr ... -
读取poi
2014-03-12 17:57 1331/** * Writer: fuanyu * Dat ... -
对Map排序
2014-02-20 15:38 790本来来自:http://blog.sina.com.cn/s ... -
java 上下篇文章实现的思路
2014-02-14 15:03 791当前文章的ID =request("id" ... -
Java:String和Date、Timestamp之间的转换
2013-12-03 14:39 10451.1 String -> Date String ... -
ArrayList和数组间的相互转换
2012-07-31 16:00 1114package test.test1; import ... -
No result defined for action and result
2012-07-02 11:50 1006当你在用struts2开发时,如果,从页面跳入action时, ... -
IntelliJ IDEA 10.0 使用javac 编译程序出现“非法字符: \65279 ”解决方法
2012-04-26 11:42 2179一、问题描述: 将在eclipse 创建的项目代码导入 I ... -
map取key及key的值
2012-03-19 15:53 1642public class Test2 { p ... -
用jdbc操作CLOB型数据的两种方式
2012-02-08 10:29 1301最近学Oracle,正好单位OA中Word文件是将文件用BAS ... -
java @override 报错处理
2012-02-02 14:14 1347有时候在自己电脑上编译通过的java代码,在别人那里确编译 ... -
Java判断字符串中是否包含汉字
2011-12-15 11:54 2292有两个方法 import java.util.regex.M ... -
JMagick+ImageMagic处理图片(高质量)
2011-11-27 13:37 2695项目需要简单处理一些用户上传的图片,如缩略图、剪切、旋转、水印 ... -
定时发送邮件的思路
2011-11-19 12:11 1304定时发送邮件:大概是用户选择在某个时间发送邮件; 步骤: ... -
java 解析json
2011-11-10 17:00 1130如下面代码 String str="[{'bus ... -
javamail 收邮件遇到的问题及解决方法
2011-11-04 16:29 22961.java.io.UnsupportedEncodingEx ...
相关推荐
在这个“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在应用中的植入管理和应用
一个简单的JMX应用通常由以下几个部分组成: - **MBean**:代表被管理的对象,实现特定的MBean接口。例如,Hello类实现了HelloMBean接口,提供getName、setName方法以及printHello方法。 - **MBeanServer**:负责...
这个压缩包中的例子很可能是创建了一个简单的Spring应用,并且配置了JMX支持,展示如何将Spring的bean暴露为MBeans进行管理和监控。通过研究这些示例,新人可以更好地理解JMX和Spring如何协同工作,提升他们的Java...
在这个入门例子中,我们将深入探讨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的工作流程: 1. 首先,定义一个MBean接口,比如`HelloWorldMBean`,包含一个返回字符串的属性`greeting`和一个输出问候的`sayHello`操作。 ```java public interface ...
标题和描述均提到了“jmx第一个学习例子”,这标志着文章旨在引导读者通过一个实践性的示例理解Java Management Extensions(JMX)的基础概念和技术。JMX作为一项由Sun Microsystems(现Oracle)提出的技术,用于...
下面给出一个简单的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`接口的类,该类通常包含一系列...
一个MBean可以是简单的POJO(Plain Old Java Object),提供了暴露给管理系统的方法。MBean接口通常定义了管理操作和属性,而MBean的实现则提供了具体的功能。 2. **MBean服务器**:MBean服务器是JMX架构的一部分,...