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

丽水市网站建设_网站建设公司_UI设计师_seo优化

有限公司网站建设 互成网络地址 四川,wordpress私活,大连网页制作培训,苏州建网站收费前面都是用JDK自带的JMX实现来写的MBean#xff0c;JMX的实现不独SUN一家#xff0c;JBOSS也有自己的JMX实现。如果你使用JBOSS来做WEB服务器#xff0c;那么基于JBOSS的实现来写MBean#xff0c;是一个不错的选择。象我们公司就是用JBOSS的#xff0c;因此所有MBean都是基… 前面都是用JDK自带的JMX实现来写的MBeanJMX的实现不独SUN一家JBOSS也有自己的JMX实现。如果你使用JBOSS来做WEB服务器那么基于JBOSS的实现来写MBean是一个不错的选择。象我们公司就是用JBOSS的因此所有MBean都是基于JBoss来写的。基于JBoss的MBean和基于SUN的MBean有什么不同吗有一些不同之外但绝大部份都一样。 下面是我最早发的一篇关于JMX的文章是我对公司所做项目的笔记它上面的JMX例子就是基于JBOSS的。博客搬了几次家文章删的删丢的丢但这篇文章还保留着简单修改一下再帖上吧。 一、  HelloWorld实例 1、准备工作   JBOSS实现了JMX规范这个实例是基于JBOSS来实现的。请先去下载一个JBOSS我是jboss-3.2.6下载地址http://www.jboss.com/downloads/index#as。这个实例需要JBOSS的两个JAR包的支持jboss-system-3.2.6.jar、jboss-jmx-3.2.6.jar如果你和我一样用Eclipse来开发推荐那么把这个两个包加入到项目的库引用中加入到库引用的方法参考前面两章。 2、程序代码   假设我们有一个叫message的属性要需要经常进行改动配置的那么我们就把它写成一个MBean。 1、HelloWorldServiceMBean接口   在写MBean之前我们先需要写一个MBean接口接口里的方法都是属性的set/get方法。这个接口必须继承接口ServiceMBean。 import org.jboss.system.ServiceMBean;public interface HelloWorldServiceMBean extends ServiceMBean {String getMessage();void setMessage(String message);} 2、HelloWorldService实现类   然后写出HelloWorldServiceMBean接口的实现类HelloWorldService这个实现类还必须继承ServiceMBeanSupport类。这种类再简单不过了就是属性和相应的set/get方法EJB中叫实体类、Hibernate中叫POJO。 import org.jboss.system.ServiceMBeanSupport;public class HelloWorldService extends ServiceMBeanSupport implements HelloWorldServiceMBean {    private String message;    public String getMessage() {        System.out.println(getMessage() message);        return message;    }     public void setMessage(String message) {        System.out.println(setMessage( message ));        this.message message;    }} 3、配置文件jboss-service.xml ?xml version1.0 encodingUTF-8?server    mbean codeexample.mbean.HelloWorldService namewww.chengang.com.cn:serviceHelloWorld        attribute nameMessageHello World/attribute    /mbean/server 说明 l code项指向MBean的实现类HelloWorldServicel name项是一个名称格式一般是[说明性文字]:service[类名]l attribute是为属性设置初始值这样当JBOSS一加载HelloWorldService类时message属性就有了一个初始值Hello World。注意Message的第一个字母必须是大写。 二、将实例部署到JBOSS   在jboss-3.2.6\server\default\deploy目录下创建一个hello.sar目录然后创建如下目录文件结构 hello.sar|----example|            |----mbean|                    |----HelloWorldService.class  (注意是*.class不是*.java)|                    |----HelloWorldServiceMBean.class|----META-INF             |----jboss-service.xml 其他说明 l 也可以将hello.sar目录用zip格式压缩成一个同名的hello.sar文件放到jboss-3.2.6\server\default\deploy目录下。l JBOSS支持热部署也就是说你在布置这个目录时并不需要重启JBOSS。 三、MBean的效果 打开网址http://127.0.0.1:8080/jmx-console/ 出现下图 然后单击“serviceHelloWorld”项打开详细页面如下 将“HelloWorld”改成“Hello WorldChenGang”再单击“Apply Changes”应用修改得到如下效果 四、其他类如何使用Messag属性   现在我们可以通过一个自动提供的WEB页面来设置Message属性了接下来的问题是“在其他类中应该如何得到Message的属性值”。MBean在JBoss是只保留一个MBean的实例单例模式也就是说问题转成我们如何去取得这个唯一实例。例程如下 1、创建一个使用到Message属性的类 import org.jboss.mx.util.MBeanProxyExt;import org.jboss.mx.util.ObjectNameFactory;public class Client {public void go() {HelloWorldServiceMBean mbean (HelloWorldServiceMBean) MBeanProxyExt.create(HelloWorldServiceMBean.class, ObjectNameFactory.create(www.chengang.com.cn:serviceHelloWorld));String msg mbean.getMessage();System.out.println(Client.go() msg);}} 注意go方法里是三句。第一句比较长它是根据jboss-service.xml文件中设置的MBean名称来取得此MBean在JBOSS中的实例。 2、在Mbean中加一个相应的调用Client.go的方法  在HelloWorldServiceMBean接口中加入一句 void callGo(); 在HelloWorldService类中加入现实方法     public void callGo() {        new Client().go();    } 3、更新布署    将三个类的class文件Clien.class、HelloWorldServiceMBean.class、HelloWorldService.class更新到JBOSS的hello.sar\example\mbean目录下。然后重启JBOSS。 4、查看效果    打开JBOSS提供的MBean设置页面如下发现多了一个callGo。 单击callGo项后的invoke按钮得到如下的DOS输出 五、其他说明 l 本实例仅演示了一个Message属性你当然可以在HelloWorldService中加入更多属性别忘了在HelloWorldServiceMBean接口也加入相应的set/get方法。l 本实例的message属性是String类型的但JMX也支持其他的类型甚至是XML信息。对于jboss-service.xml中的XML信息这时属性类型要求是org.w3c.dom.ElementJMX将它封装成了一个XML的DOM对象。l 回顾一下JMX也是将配置信息写在了一个文件jboss-service.xml文件里嘛相对于将配置文件写到*.properties文件的方式它似乎也没什么新鲜的地方。但通过本章实例我们可以看到JMX的一些好处我们不用写代码去读配置文件的信息而且JMX支持的属性类型是多种多样的如上面说的org.w3c.dom.Element。更重要的是JMX还提供了一整套的属性之前互相访问、互相调用的功能这个HelloWorld实例所反映的只是冰山一角而已。 六、参考资料http://www.huihoo.com/java/jmx/jmx_base.html  七、作者简介 陈刚广西桂林人著作有《Eclipse从入门到精通》 您可以通过其博客了解更多信息和文章http://www.chenGang.com.cn
http://www.ihoyoo.com/news/70226.html

相关文章:

  • 正定网站制作网站备案地址不是我的地址怎么办
  • 怎么样做深网的网站WordPress主题开发核心知识
  • 进入网站后台管理系统wordpress会员查看
  • 网站做外链软件wordpress写作插件
  • 成品网站建站空间百度首页排名优化价格
  • 门户网站建设总结todoist wordpress
  • 想把书放到二手网站如何做创作服务平台
  • 济南网站建设公司哪家好一点交换友情链接的要求有
  • 怎么让自己的网站通过域名访问不了国内知名公关公司
  • 哪些网站可以做代理网站做专业团队
  • 宁德市房价衡水seo培训
  • 京东网上购物官方网站什么是响应式布局
  • 网站建设的目的及功能定位是啥网站开发jsp需要什么jar包
  • 建设网站的叫什么职位福州seo关键字推广
  • 主题教育网站建立wordpress 5.1后台打开慢
  • 精品网站建设费用 c磐石网络重庆市建设工程信息网安全监督安管人员查询
  • 网站备案要多久做网站需要什么软件教程
  • 网站建设免费建站广州做网站一般多少钱
  • 中山建设安监站网站网站建设工作总结范文
  • 优良的定制网站建设服务商个人网站做什么内容好
  • 微信公众号自己微网站吗vue 做pc网站可以吗
  • 一元购物网站建设小程序开发者工具官网
  • 年栾洪全单页做网站教程跨境电商个人开店的平台
  • 两学一做考学网站网络热点事件舆情案例
  • 青岛美容化妆品外贸网站建设pc网站建设怎么弄
  • php大型网站设计天津seo公司排名
  • 建设教育网站怎样制作免费手机网站
  • 酒店网站建设流程图网站设计的趋势
  • 网站备案变更接入中国电子工程网
  • 公司网站简介怎么做怎样把网站推广出去