歡迎您光臨本站 註冊首頁

spring和jmx

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

  <?xml version="1.0" encoding="UTF-8"?>

  <beans xmlns="http://www.springframework.org/schema/beans"

  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

  <bean id="mbeanManager"

  class="server.mbean.MBeanManager" />

  <bean id="mbeanTest"

  class="server.mbean.MBeanTest" />

  <bean id="mbeanServer"

  class="org.springframework.jmx.support.MBeanServerFactoryBean">

  </bean>

  <bean id="assembler"

  class="org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler">

  <property name="attributeSource" ref="jmxAttributeSource" />

  </bean>

  <bean id="jmxAttributeSource"

  class="org.springframework.jmx.export.annotation.AnnotationJmxAttributeSource" />

  <bean id="mBeanExporter"

  class="org.springframework.jmx.export.MBeanExporter">

  <property name="server" ref="mbeanServer" />

  <property name="assembler" ref="assembler" />

  <property name="beans">

  <map>

  <entry key="eci:name=testBean"

  value-ref="mbeanTest" />

  <entry key="eci:name=manageBean"

  value-ref="mbeanManager" />

  </map>

  </property>

  <property name="notificationListeners">

  <list>

  <bean

  class="org.springframework.jmx.export.NotificationListenerBean">

  <constructor-arg ref="testNotificationListener" />

  <property name="mappedObjectNames">

  <list>

  <value>eci:name=testBean</value>

  <value>eci:name=manageBean</value>

  </list>

  </property>

  <property name="notificationFilter"

  ref="testNotificationListener" />

  </bean>

  </list>

  </property>

  </bean>

  <bean id="testNotificationListener" class="server.notification.TestNotificationListener"/>

  <bean id="registry" class="org.springframework.remoting.rmi.RmiRegistryFactoryBean">

  <property name="port" value="9876"/>

  </bean>

  <bean id="serverConnector"

  class="org.springframework.jmx.support.ConnectorServerFactoryBean" >

  <property name="serviceUrl" value="service:jmx:rmi://localhost/jndi/rmi://localhost:9876/eci"/>

  <!--<property name="environment">

  <map>

  <entry key="jmx.remote.x.password.file">

  <value>jmxremote.password</value>

  </entry>

  <entry key="jmx.remote.x.access.file">

  <value>jmxremote.access</value>

  </entry>

  </map>

  </property>-->

  </bean>

  </beans>

  針對environment設置,需要補充下.

  這是針對安全設置的,jmxremote.password,jmxremote.access分別是保存的訪問許可權的信息和密碼.這兩個是文 件,這兩個文件可以參考在jdk目錄下的jrelibmanagement下的模板.我們可以根據不同的安全來確定是否需要設置用戶名和密碼.

  java文件讀入spring配置文件,並啟動jmx server.

  Java 代碼

  package server.main;

  import org.springframework.context.support.*;

  public class ServerMain {

  public static void main(String[] args) {

  @SuppressWarnings("unused")

  ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(

  "/jmxServerContext.xml");

  while (true) {

  try {

  Thread.sleep(1000);

  } catch (InterruptedException e) {

  e.printStackTrace();

  }

  }

  }

  }


[火星人 ] spring和jmx已經有396次圍觀

http://coctec.com/docs/java/show-post-60236.html