<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。在這個插件中我們可以很方便的將我們的服務(wù)發(fā)不成JMX可管理的MBean。本教程中我們繼續(xù)探討這個話題。

    老套了,我們的HelloWorld服務(wù),注意這個服務(wù)為了滿足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)鍵的是我們要將我們的服務(wù)注入到JMX服務(wù)器中。

    然后寫一個JMX的服務(wù)端例子。


     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服務(wù)到JMX中。最后暫停10分鐘阻止我們的程序立即退出,當然你可以寫一個while的死循環(huán)。

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

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

    然后使用我們的jconsole來查看我們的JMX服務(wù)。

    image

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

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

    image

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


     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
    主站蜘蛛池模板: 欧亚一级毛片免费看| 亚洲av乱码一区二区三区香蕉| 丰满亚洲大尺度无码无码专线 | 日韩在线一区二区三区免费视频 | 欧美日韩亚洲精品| 四虎AV永久在线精品免费观看| 久久精品国产亚洲av品善| 国产一级淫片免费播放| 一级黄色免费毛片| 亚洲精品二区国产综合野狼| 99在线视频免费观看| 亚洲午夜久久影院| 成年在线网站免费观看无广告| 亚洲成a∨人片在无码2023| 又粗又硬免费毛片| 最近国语视频在线观看免费播放 | 精品国产成人亚洲午夜福利| 国产麻豆免费观看91| 国产VA免费精品高清在线| 亚洲欧洲日产国码久在线观看 | 国产成人涩涩涩视频在线观看免费| 日韩在线观看免费| 青青草原精品国产亚洲av| 毛色毛片免费观看| 男女拍拍拍免费视频网站 | 亚洲日本一线产区和二线| 亚洲国产综合人成综合网站| 国产成人一区二区三区视频免费| 亚洲国产精品一区二区久| 免费观看四虎精品国产永久| 91免费国产视频| 色婷五月综激情亚洲综合| 亚洲人成电影网站国产精品| 久久ww精品w免费人成| 日韩亚洲人成网站| 亚洲黄色网址在线观看| 又爽又黄无遮挡高清免费视频| 久久久免费的精品| 美女无遮挡免费视频网站 | 亚洲第一成年男人的天堂| 曰皮全部过程视频免费国产30分钟 |