2017-08-25 91 views

回答

1

當試圖找到由任何Spring XML解析器創建的bean的等價物時,第一步是查看名稱空間處理程序,在此例中爲MongoNamespaceHandler。檢查該類顯示jmx名稱空間由MongoJmxParser解析。下一步是看看它,你會看到它定義了一堆豆;請參閱here

protected void registerJmxComponents(String mongoRefName, Element element, ParserContext parserContext) { 
    Object eleSource = parserContext.extractSource(element); 

    CompositeComponentDefinition compositeDef = new CompositeComponentDefinition(element.getTagName(), eleSource); 

    createBeanDefEntry(AssertMetrics.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(BackgroundFlushingMetrics.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(BtreeIndexCounters.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(ConnectionMetrics.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(GlobalLockMetrics.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(MemoryMetrics.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(OperationCounters.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(ServerInfo.class, compositeDef, mongoRefName, eleSource, parserContext); 
    createBeanDefEntry(MongoAdmin.class, compositeDef, mongoRefName, eleSource, parserContext); 

    parserContext.registerComponent(compositeDef); 

} 
+0

是的,當我手動創建這些bean時,MBean顯示在JConsole中。謝謝。 – Gregor

相關問題