构造查询对象约束。
可以使用 queryNames 或 queryMBeans 方法查询 MBean Server 以查找满足特定条件的 MBean。该方法的 QueryExp 参数可以是接口 QueryExp 的任何实现,但通常最好通过调用此类中的静态方法来获取 QueryExp 值。在查询远程 MBean Server 时尤其如此:远程 MBean Server 中可能不存在 QueryExp 接口的自定义实现,但此类中的方法仅返回作为 JMX 实现一部分的标准类。
例如,假设您想要查找 Enabled 属性为 true 且 Owner 属性为 "Duke" 的所有 MBean。以下是如何通过将方法调用链接在一起来构造适当的 QueryExp:
QueryExp query =
Query.and(Query.eq(Query.attr("Enabled"), Query.value(true)),
Query.eq(Query.attr("Owner"), Query.value("Duke")));
- 自从:
- 1.5
-
字段摘要
字段修饰符和类型Field描述static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述static QueryExp返回一个查询表达式,它是两个其他查询表达式的结合。static QueryExp返回表示字符串参数匹配约束的查询表达式。static AttributeValueExp返回一个新的属性表达式。static AttributeValueExp返回一个新的限定属性表达式。static QueryExp返回一个查询表达式,该表达式表示一个值介于另外两个值之间的约束。static AttributeValueExp返回一个新的类属性表达式,它可以在任何需要 ValueExp 的查询调用中使用。static ValueExp返回表示两个数值的商的二进制表达式。static QueryExp返回表示两个值的相等约束的查询表达式。static QueryExp返回表示字符串参数匹配约束的查询表达式。static QueryExp返回表示对两个值的“大于或等于”约束的查询表达式。static QueryExp返回表示对两个值的“大于”约束的查询表达式。static QueryExp返回将值约束为显式列表之一的表达式。static QueryExp返回表示字符串参数匹配约束的查询表达式。static QueryExpisInstanceOf(StringValueExp classNameValue) 返回表示 MBean 类的继承约束的查询表达式。static QueryExp返回表示对两个值的“小于或等于”约束的查询表达式。static QueryExp返回表示对两个值的“小于”约束的查询表达式。static QueryExp返回表示字符串参数匹配约束的查询表达式。static ValueExp返回表示两个数值之间差异的二进制表达式。static QueryExp返回一个约束,它是其参数的否定。static QueryExp返回一个查询表达式,它是两个其他查询表达式的析取。static ValueExp返回表示两个数值之和或两个字符串值的串联的二进制表达式。static ValueExp返回表示两个数值乘积的二进制表达式。static ValueExpvalue(boolean val) 返回一个boolean表达式,可以在任何需要 ValueExp 的查询调用中使用。static ValueExpvalue(double val) 返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。static ValueExpvalue(float val) 返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。static ValueExpvalue(int val) 返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。static ValueExpvalue(long val) 返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。static ValueExp返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。static StringValueExp返回一个新的字符串表达式。
-
字段详细信息
-
GT
public static final int GT代表gt(javax.management.ValueExp, javax.management.ValueExp)查询的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
LT
public static final int LT代表lt(javax.management.ValueExp, javax.management.ValueExp)查询的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
GE
public static final int GE代表geq(javax.management.ValueExp, javax.management.ValueExp)查询的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
LE
public static final int LE代表leq(javax.management.ValueExp, javax.management.ValueExp)查询的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
EQ
public static final int EQ代表eq(javax.management.ValueExp, javax.management.ValueExp)查询的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
PLUS
public static final int PLUS代表plus(javax.management.ValueExp, javax.management.ValueExp)表达式的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
MINUS
public static final int MINUS代表minus(javax.management.ValueExp, javax.management.ValueExp)表达式的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
TIMES
public static final int TIMES代表times(javax.management.ValueExp, javax.management.ValueExp)表达式的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
DIV
public static final int DIV代表div(javax.management.ValueExp, javax.management.ValueExp)表达式的代码。这主要是对序列化形式的查询感兴趣。- 参见:
-
-
构造方法详细信息
-
Query
public Query()基本构造方法。
-
-
方法详情
-
and
返回一个查询表达式,它是两个其他查询表达式的结合。- 参数:
q1- 查询表达式。q2- 另一个查询表达式。- 返回:
- 两个参数的结合。返回的对象将被序列化为非公共类 javax.management.AndQueryExp 的实例。
-
or
返回一个查询表达式,它是两个其他查询表达式的析取。- 参数:
q1- 查询表达式。q2- 另一个查询表达式。- 返回:
- 两个参数的析取。返回的对象将被序列化为非公共类 javax.management.OrQueryExp 的实例。
-
gt
返回表示对两个值的“大于”约束的查询表达式。- 参数:
v1- 一个值表达式。v2- 另一个值表达式。- 返回:
-
对参数的“大于”约束。返回的对象将被序列化为非公共类 javax.management.BinaryRelQueryExp 的实例,其
relOp等于GT。
-
geq
返回表示对两个值的“大于或等于”约束的查询表达式。- 参数:
v1- 一个值表达式。v2- 另一个值表达式。- 返回:
-
对参数的“大于或等于”约束。返回的对象将被序列化为非公共类 javax.management.BinaryRelQueryExp 的实例,其
relOp等于GE。
-
leq
返回表示对两个值的“小于或等于”约束的查询表达式。- 参数:
v1- 一个值表达式。v2- 另一个值表达式。- 返回:
-
对参数的“小于或等于”约束。返回的对象将被序列化为非公共类 javax.management.BinaryRelQueryExp 的实例,
relOp等于LE。
-
lt
返回表示对两个值的“小于”约束的查询表达式。- 参数:
v1- 一个值表达式。v2- 另一个值表达式。- 返回:
-
对参数的“小于”约束。返回的对象将被序列化为非公共类 javax.management.BinaryRelQueryExp 的实例,其
relOp等于LT。
-
eq
返回表示两个值的相等约束的查询表达式。- 参数:
v1- 一个值表达式。v2- 另一个值表达式。- 返回:
-
对参数的“等于”约束。返回的对象将被序列化为非公共类 javax.management.BinaryRelQueryExp 的实例,其
relOp等于EQ。
-
between
返回一个查询表达式,该表达式表示一个值介于另外两个值之间的约束。- 参数:
v1- 介于 v2 和 v3 之间的值表达式。v2- 表示约束边界的值表达式。v3- 表示约束边界的值表达式。- 返回:
- v1 位于 v2 和 v3 之间的约束。返回的对象将被序列化为非公共类 javax.management.BetweenQueryExp 的实例。
-
match
返回表示字符串参数匹配约束的查询表达式。匹配语法与文件globbing一致:支持“?”、“*”、“[”,都可以用“\”转义;字符类可以使用“!”表示否定,“-”表示范围。 (*用于任何字符序列,?用于单个任意字符,[...]用于字符序列)。例如:a*b?c将匹配以字符a开头、后跟任意数量的字符、b、任何单个字符和c开头的字符串。- 参数:
a- 属性表达式s- 表示匹配约束的字符串值表达式- 返回:
- 表示对字符串参数的匹配约束的查询表达式。返回的对象将被序列化为非公共类 javax.management.MatchQueryExp 的实例。
-
attr
返回一个新的属性表达式。有关表达式语义的详细描述,请参阅
AttributeValueExp。针对给定的
objectName评估此表达式包括执行MBeanServer.getAttribute(objectName, name)。- 参数:
name- 属性的名称。- 返回:
-
名为
name的属性的属性表达式。
-
attr
返回一个新的限定属性表达式。
针对给定的
objectName评估此表达式包括执行MBeanServer.getObjectInstance(objectName)和MBeanServer.getAttribute(objectName, name)。- 参数:
className- 拥有该属性的类的名称。name- 属性的名称。- 返回:
- 名为 name 的属性的属性表达式。返回的对象将被序列化为非公共类 javax.management.QualifiedAttributeValueExp 的实例。
-
classattr
返回一个新的类属性表达式,它可以在任何需要 ValueExp 的查询调用中使用。
针对给定的
objectName评估此表达式包括执行MBeanServer.getObjectInstance(objectName)。- 返回:
- 类属性表达式。返回的对象将被序列化为非公共类 javax.management.ClassAttributeValueExp 的实例。
-
not
返回一个约束,它是其参数的否定。- 参数:
queryExp- 要否定的约束。- 返回:
- 否定约束。返回的对象将被序列化为非公共类 javax.management.NotQueryExp 的实例。
-
in
返回将值约束为显式列表之一的表达式。- 参数:
val- 要约束的值。valueList- ValueExp 数组。- 返回:
- 表示约束的 QueryExp。返回的对象将被序列化为非公共类 javax.management.InQueryExp 的实例。
-
value
返回一个新的字符串表达式。- 参数:
val- 字符串值。- 返回:
- 包含字符串参数的 ValueExp 对象。
-
value
返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。- 参数:
val- Number 的一个实例。- 返回:
- 包含参数的 ValueExp 对象。返回的对象将被序列化为非公共类 javax.management.NumericValueExp 的实例。
-
value
返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。- 参数:
val- 一个 int 值。- 返回:
- 包含参数的 ValueExp 对象。返回的对象将被序列化为非公共类 javax.management.NumericValueExp 的实例。
-
value
返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。- 参数:
val- 长值。- 返回:
- 包含参数的 ValueExp 对象。返回的对象将被序列化为非公共类 javax.management.NumericValueExp 的实例。
-
value
返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。- 参数:
val- 浮点值。- 返回:
- 包含参数的 ValueExp 对象。返回的对象将被序列化为非公共类 javax.management.NumericValueExp 的实例。
-
value
返回一个数值表达式,该表达式可用于任何需要 ValueExp 的查询调用。- 参数:
val- 双精度值。- 返回:
- 包含参数的 ValueExp 对象。返回的对象将被序列化为非公共类 javax.management.NumericValueExp 的实例。
-
value
返回一个boolean表达式,可以在任何需要 ValueExp 的查询调用中使用。- 参数:
val- 一个boolean。- 返回:
- 包含参数的 ValueExp 对象。返回的对象将被序列化为非公共类 javax.management.BooleanValueExp 的实例。
-
plus
返回表示两个数值之和或两个字符串值的串联的二进制表达式。- 参数:
value1- 第一个“+”操作数。value2- 第二个“+”操作数。- 返回:
-
表示两个参数的总和或串联的 ValueExp。返回的对象将被序列化为非公共类 javax.management.BinaryOpValueExp 的实例,其
op等于PLUS。
-
times
返回表示两个数值乘积的二进制表达式。- 参数:
value1- 第一个“*”操作数。value2- 第二个“*”操作数。- 返回:
-
代表产品的 ValueExp。返回的对象将被序列化为非公共类 javax.management.BinaryOpValueExp 的实例,其
op等于TIMES。
-
minus
返回表示两个数值之间差异的二进制表达式。- 参数:
value1- 第一个“-”操作数。value2- 第二个“-”操作数。- 返回:
-
表示两个参数之间差异的 ValueExp。返回的对象将被序列化为非公共类 javax.management.BinaryOpValueExp 的实例,其
op等于MINUS。
-
div
返回表示两个数值的商的二进制表达式。- 参数:
value1- 第一个“/”操作数。value2- 第二个“/”操作数。- 返回:
-
表示两个参数的商的 ValueExp。返回的对象将被序列化为非公共类 javax.management.BinaryOpValueExp 的实例,其
op等于DIV。
-
initialSubString
返回表示字符串参数匹配约束的查询表达式。该值必须以给定的文字字符串值开头。- 参数:
a- 属性表达式。s- 表示字符串值开头的字符串值表达式。- 返回:
- a匹配s的约束。返回的对象将被序列化为非公共类 javax.management.MatchQueryExp 的实例。
-
anySubString
返回表示字符串参数匹配约束的查询表达式。该值必须包含给定的文字字符串值。- 参数:
a- 属性表达式。s- 表示子字符串的字符串值表达式。- 返回:
- a匹配s的约束。返回的对象将被序列化为非公共类 javax.management.MatchQueryExp 的实例。
-
finalSubString
返回表示字符串参数匹配约束的查询表达式。该值必须以给定的文字字符串值结尾。- 参数:
a- 属性表达式。s- 表示字符串值结尾的字符串值表达式。- 返回:
- a匹配s的约束。返回的对象将被序列化为非公共类 javax.management.MatchQueryExp 的实例。
-
isInstanceOf
返回表示 MBean 类的继承约束的查询表达式。示例:要查找作为
NotificationBroadcaster实例的 MBean,请使用Query.isInstanceOf(Query.value(NotificationBroadcaster.class.getName()))。针对给定的
objectName评估此表达式包括执行MBeanServer.isInstanceOf(objectName, ((StringValueExp)classNameValue.apply(objectName)).getValue()。- 参数:
classNameValue-StringValueExp返回所选 MBean 应作为实例的类的名称。- 返回:
- 表示 MBean 类的继承约束的查询表达式。返回的对象将被序列化为非公共类 javax.management.InstanceOfQueryExp 的实例。
- 自从:
- 1.6
-