我如何从 java 类中获取我的应用程序所在的端口?例如,我使用的 Standalone.xml 中的 JBoss 是:
独立的.xml
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
<socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}" />
<socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}" />
<socket-binding name="ajp" port="${jboss.ajp.port:8009}" />
<socket-binding name="http" port="${jboss.http.port:8080}" />
<socket-binding name="https" port="${jboss.https.port:8443}" />
<socket-binding name="txn-recovery-environment" port="4712" />
<socket-binding name="txn-status-manager" port="4713" />
<outbound-socket-binding name="mail-smtp">
<remote-destination host="localhost" port="25" />
</outbound-socket-binding>
</socket-binding-group>
Java类:
Integer port = (Integer) ManagementFactory.getPlatformMBeanServer()
.getAttribute(new ObjectName("jboss.as:socket-binding-group=standard-sockets,socket-binding=http"),
"port");