- java.lang.Object
-
- javax.management.remote.JMXServiceURL
-
- 实现的所有接口
-
Serializable
public class JMXServiceURL extends Object implements Serializable
JMX API连接器服务器的地址。 此类的实例是不可变的。
该地址是SLP的抽象服务URL ,如RFC 2609中所定义并由RFC 3111修改。它必须如下所示:
service:jmx:protocol:sap
这里,
protocol
是用于连接到连接器服务器的传输协议。 它是一个包含一个或多个ASCII字符的字符串,每个字符都是一个字母,一个数字或一个字符+
或-
。 第一个字符必须是一个字母。 大写字母转换为小写字母。sap
是找到连接器服务器的地址。 此地址使用RFC 2609定义的语法子集用于基于IP的协议。 它是一个子集,因为不支持user@host
语法。此类目前不支持RFC 2609定义的其他语法。
支持的语法是:
//[host[:port]][url-path]
方括号
[]
表示地址的可选部分。 并非所有协议都能识别所有可选部件。host
是主机名,IPv4数字主机地址或方括号中的IPv6数字地址。port
是十进制端口号。 0表示默认或匿名端口,具体取决于协议。可以省略
host
和port
。 如果没有port
则无法提供host
。url-path
(如果有)以斜杠(/
)或分号(;
);
并继续到地址的末尾。 它可以使用RFC 2609中指定的分号语法包含属性。这些属性不会被此类解析,也不会检测到错误的属性语法。虽然根据RFC 2609,以分号开头的
url-path
是合法的,但并非所有SLP实现都允许,因此建议避免使用该语法。在初始的
service:jmx:protocol
字符串或地址的主机部分中,service:jmx:protocol
。 根据协议,案例在url-path
可能很重要。
-
-
构造方法摘要
构造方法 构造器 描述 JMXServiceURL(String serviceURL)
通过解析服务URL字符串构造JMXServiceURL
。JMXServiceURL(String protocol, String host, int port)
使用给定的协议,主机和端口构造JMXServiceURL
。JMXServiceURL(String protocol, String host, int port, String urlPath)
用给定的部分构造一个JMXServiceURL
。
-
-
-
构造方法详细信息
-
JMXServiceURL
public JMXServiceURL(String serviceURL) throws MalformedURLException
通过解析服务URL字符串构造
JMXServiceURL
。- 参数
-
serviceURL
- 要解析的URL字符串。 - 异常
-
NullPointerException
- 如果serviceURL
为空。 -
MalformedURLException
- 如果serviceURL
不符合抽象服务URL的语法,或者它不是JMX Remote API服务的有效名称。JMXServiceURL
必须以字符串"service:jmx:"
(不区分大小写)。 它不能包含任何不可打印的ASCII字符的字符。
-
JMXServiceURL
public JMXServiceURL(String protocol, String host, int port) throws MalformedURLException
使用给定的协议,主机和端口构造
JMXServiceURL
。 此构造函数相当于JMXServiceURL(protocol, host, port, null)
。- 参数
-
protocol
- URL的协议部分。 如果为null,则默认为jmxmp
。 -
host
- URL的主机部分。 如果host为null并且本地主机名可以解析为IP,则主机默认为本地主机名,由InetAddress.getLocalHost().getHostName()
确定。 如果host为null并且无法将本地主机名解析为IP,则host默认为其中一个活动网络接口的数字IP地址。 如果host是数字IPv6地址,则可以选择将其括在方括号[]
。 -
port
- URL的端口部分。 - 异常
-
MalformedURLException
- 如果其中一个部分在语法上不正确,或者如果host
为空并且无法找到本地主机名,或者port
为负数。
-
JMXServiceURL
public JMXServiceURL(String protocol, String host, int port, String urlPath) throws MalformedURLException
用给定的部分构造一个
JMXServiceURL
。- 参数
-
protocol
- URL的协议部分。 如果为null,则默认为jmxmp
。 -
host
- URL的主机部分。 如果host为null并且本地主机名可以解析为IP,则主机默认为本地主机名,由InetAddress.getLocalHost().getHostName()
确定。 如果host为null并且无法将本地主机名解析为IP,则host默认为其中一个活动网络接口的数字IP地址。 如果host是数字IPv6地址,则可以选择将其括在方括号[]
。 -
port
- URL的端口部分。 -
urlPath
- URL的URL路径部分。 如果为null,则默认为空字符串。 - 异常
-
MalformedURLException
- 如果其中一个部分在语法上不正确,或者如果host
为空且无法找到本地主机名,或者port
为负数。
-
-
方法详细信息
-
getProtocol
public String getProtocol()
服务URL的协议部分。
- 结果
- 服务URL的协议部分。 这永远不会为空。
-
getHost
public String getHost()
服务URL的主机部分。 如果使用带有URL字符串参数的构造函数构造服务URL,则结果是指定该URL中的主机的子字符串。 如果服务URL是使用带有单独主机参数的构造函数构造的,则结果是指定的字符串。 如果该字符串为null,则如果可以将本地主机名解析为IP,则结果为
InetAddress.getLocalHost().getHostName()
。 否则将使用活动网络接口的其他数字IP地址。在任何一种情况下,如果使用数字IPv6地址的
[...]
语法指定主机,则此处的返回值中不包括方括号。- 结果
- 服务URL的主机部分。 这永远不会为空。
-
getPort
public int getPort()
服务URL的端口。 如果未指定端口,则返回值为0。
- 结果
- 服务URL的端口,如果没有,则为0。
-
getURLPath
public String getURLPath()
服务URL的URL路径部分。 这是一个空字符串,或以斜杠开头的字符串(
/
),或以分号开头的字符串(;
)。- 结果
- 服务URL的URL路径部分。 这永远不会为空。
-
toString
public String toString()
-
equals
public boolean equals(Object obj)
指示某个其他对象是否等于此对象。 当且仅当此方法返回true
obj
是一个实例JMXServiceURL
其getProtocol()
,getHost()
,getPort()
和getURLPath()
种方法返回相同的值作为该对象。 在不影响相等性的情况下,getProtocol()
和getHost()
的值可以不同。- 重写:
-
equals
在类Object
- 参数
-
obj
- 要与之比较的引用对象。 - 结果
-
true
如果此对象与obj
参数相同; 否则为false
。 - 另请参见:
-
Object.hashCode()
,HashMap
-
-