<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    xylz,imxylz

    關(guān)注后端架構(gòu)、中間件、分布式和并發(fā)編程

       :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      111 隨筆 :: 10 文章 :: 2680 評論 :: 0 Trackbacks

    4.3 Guice與JMX

    Guice官方提供一個JMX的插件guice-jmx-2.0.jar。在這個插件中我們可以很方便的將我們的服務發(fā)不成JMX可管理的MBean。本教程中我們繼續(xù)探討這個話題。

    老套了,我們的HelloWorld服務,注意這個服務為了滿足JMX的規(guī)范,接口名稱以MBean結(jié)尾,而實現(xiàn)類必須不帶MBean。

    1 public interface HelloWorldMBean {
    2     String sayHello();
    3 }

     

    然后是實現(xiàn)類HelloWorld。


     1 public class HelloWorld implements HelloWorldMBean {
     2 
     3     @Override
     4     public String sayHello() {
     5         return "Hello, guice";
     6     }
     7     @Inject
     8     public void register(MBeanServer server) {
     9         try {
    10             server.registerMBean(thisnew ObjectName("xylz guice demo:type=HelloWorld"));
    11         } catch (Exception e) {
    12             e.printStackTrace();
    13         }
    14     }
    15 }
    16 

    這里比較關(guān)鍵的是我們要將我們的服務注入到JMX服務器中。

    然后寫一個JMX的服務端例子。


     1 public class JMXDemo {
     2 
     3     public static void main(String[] args) throws Exception{
     4        Injector inj= Guice.createInjector(new Module() {
     5             @Override
     6             public void configure(Binder binder) {
     7                 binder.bind(MBeanServer.class).toInstance(ManagementFactory.getPlatformMBeanServer());
     8                 binder.bind(HelloWorldMBean.class).to(HelloWorld.class);
     9             }
    10         });
    11        //
    12        Manager.manage("guice-jmx-demo", inj);
    13        //
    14        Thread.sleep(10000*600);//sleep for ten minute
    15     }
    16 
    17 }
    18 

    在這個例子中我們綁定MBeanServer到Guice中,然后通過Guice的JMX插件將我們的HelloWorldMBean服務到JMX中。最后暫停10分鐘阻止我們的程序立即退出,當然你可以寫一個while的死循環(huán)。

    特別注意,在eclipse中需要設(shè)置JVM的參數(shù)才能正確啟動我們的JMX服務。見下面。

    -Dcom.sun.management.jmxremote
    -Dcom.sun.management.jmxremote.port=4321
    -Dcom.sun.management.jmxremote.authenticate=false
    -Dcom.sun.management.jmxremote.ssl=false

    然后使用我們的jconsole來查看我們的JMX服務。

    image

    在這里我們就可以看到我們的JMXDemo的進程了。然后選擇連接。

    下面的圖顯示了我們執(zhí)行sayHello方法的結(jié)果。

    image

    當然了我們可以自己寫一個client的程序來處理我們的服務。


     1 public class JMXClientDemo {
     2 
     3     public static void main(String[] args) throws Exception{
     4         JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://127.0.0.1:4321/jmxrmi");
     5         JMXConnector jmxc = JMXConnectorFactory.connect(url, null);
     6         MBeanServerConnection mbsc = jmxc.getMBeanServerConnection();
     7         //
     8         ObjectName mbeanName = new ObjectName("xylz guice demo:type=HelloWorld");
     9         //
    10         HelloWorldMBean helloWorld = JMX.newMBeanProxy(mbsc, mbeanName, HelloWorldMBean.classtrue);
    11         String msg=helloWorld.sayHello();
    12         System.out.println(msg);
    13     }
    14 
    15 }
    16 
    上一篇:Google Guice 入門教程07 - 整合第三方組件(1)
    下一篇:待續(xù)

    ©2009-2014 IMXYLZ |求賢若渴
    posted on 2009-12-31 15:35 imxylz 閱讀(19867) 評論(3)  編輯  收藏 所屬分類: J2EEGoogle Guice

    評論

    # re: Google Guice 入門教程08 - 整合第三方組件(2) 2009-12-31 21:29 凡客誠品羽絨服
    阿開始大世界頂級  回復  更多評論
      

    # re: Google Guice 入門教程08 - 整合第三方組件(2) 2010-01-02 18:30 在線詞典
    不錯....  回復  更多評論
      

    # re: Google Guice 入門教程08 - 整合第三方組件(2) 2015-11-16 21:49 rfbingo
    nice,謝謝樓主,最近在使用guice,學習了  回復  更多評論
      


    ©2009-2014 IMXYLZ
    主站蜘蛛池模板: 亚洲精品久久久www| 又粗又大又硬又爽的免费视频| 久久夜色精品国产噜噜噜亚洲AV| 亚洲AV无码久久精品色欲| 一级毛片一级毛片免费毛片| 亚洲 另类 无码 在线| 色妞www精品视频免费看| 吃奶摸下高潮60分钟免费视频| 成a人片亚洲日本久久| 亚洲国产成人VA在线观看| 特黄特色大片免费| 中文字幕日韩亚洲| 久久高潮一级毛片免费| 亚洲成AV人片在线播放无码| 亚洲熟女精品中文字幕| 最近2019年免费中文字幕高清 | 免费人成激情视频| av成人免费电影| 亚洲精品免费在线观看| 国产一卡2卡3卡4卡2021免费观看 国产一卡2卡3卡4卡无卡免费视频 | 成人自慰女黄网站免费大全| 男女交性永久免费视频播放| 亚洲av成人中文无码专区| 亚洲成人一区二区| 东方aⅴ免费观看久久av| 亚洲黄色网站视频| 日韩在线a视频免费播放| 在线播放国产不卡免费视频| 亚洲AV无码久久精品蜜桃| 无码专区永久免费AV网站| 国产亚洲美女精品久久久久| 亚洲综合AV在线在线播放| 91短视频免费在线观看| 青青青亚洲精品国产| 亚洲成色www久久网站夜月| 国产卡二卡三卡四卡免费网址| 美女扒开屁股让男人桶爽免费| 亚洲午夜久久久久久久久久| av无码国产在线看免费网站| 老牛精品亚洲成av人片| 久久久久亚洲AV片无码|