Класс Query
public class Query extends Object
Создаёт ограничения объекта запроса.
Сервер MBean можно запросить для получения MBean, удовлетворяющих определённому условию, используя его метод queryNames или queryMBeans. Параметр QueryExp метода может быть любой реализацией интерфейса QueryExp, но обычно лучше получать значение QueryExp, вызывая статические методы в этом классе. Это особенно актуально при запросе к удалённому серверу MBean: пользовательская реализация интерфейса QueryExp может отсутствовать на удалённом сервере MBean, но методы этого класса возвращают только стандартные классы, которые являются частью реализации JMX.
Например, предположим, что вы хотите найти все MBean, где атрибут
Enabled имеет значение true, а атрибут Owner имеет значение
"Duke". Вот как можно создать соответствующий QueryExp, объединив вызовы методов:
QueryExp query =
Query.and(Query.eq(Query.attr("Enabled"), Query.value(true)),
Query.eq(Query.attr("Owner"), Query.value("Duke")));
- Since:
- 1.5
Краткое описание полей
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Query() |
Базовый конструктор. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static QueryExp |
and |
Возвращает выражение запроса, которое является конъюнкцией двух других выражений запроса. |
static QueryExp |
anySubString |
Возвращает выражение запроса, представляющее ограничение соответствия строковому аргументу. |
static AttributeValueExp |
attr |
Возвращает новое выражение атрибута. |
static AttributeValueExp |
attr |
Возвращает новое выражение квалифицированного атрибута. |
static QueryExp |
between |
Возвращает выражение запроса, представляющее ограничение, что одно значение находится между двумя другими значениями. |
static AttributeValueExp |
classattr() |
Возвращает новое выражение атрибута класса, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static ValueExp |
div |
Возвращает бинарное выражение, представляющее частное двух числовых значений. |
static QueryExp |
eq |
Возвращает выражение запроса, представляющее ограничение равенства двух значений. |
static QueryExp |
finalSubString |
Возвращает выражение запроса, представляющее ограничение соответствия строковому аргументу. |
static QueryExp |
geq |
Возвращает выражение запроса, представляющее ограничение «больше или равно» для двух значений. |
static QueryExp |
gt |
Возвращает выражение запроса, представляющее ограничение «больше» для двух значений. |
static QueryExp |
in |
Возвращает выражение, ограничивающее значение одним из заданного списка. |
static QueryExp |
initialSubString |
Возвращает выражение запроса, представляющее ограничение соответствия строковому аргументу. |
static QueryExp |
isInstanceOf |
Возвращает выражение запроса, представляющее ограничение наследования для класса MBean. |
static QueryExp |
leq |
Возвращает выражение запроса, представляющее ограничение «меньше или равно» для двух значений. |
static QueryExp |
lt |
Возвращает выражение запроса, представляющее ограничение «меньше» для двух значений. |
static QueryExp |
match |
Возвращает выражение запроса, представляющее ограничение соответствия строковому аргументу. |
static ValueExp |
minus |
Возвращает бинарное выражение, представляющее разницу между двумя числовыми значениями. |
static QueryExp |
not |
Возвращает ограничение, являющееся отрицанием своего аргумента. |
static QueryExp |
or |
Возвращает выражение запроса, которое является дизъюнкцией двух других выражений запроса. |
static ValueExp |
plus |
Возвращает бинарное выражение, представляющее сумму двух числовых значений или конкатенацию двух строковых значений. |
static ValueExp |
times |
Возвращает бинарное выражение, представляющее произведение двух числовых значений. |
static ValueExp |
value |
Возвращает булевое выражение, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static ValueExp |
value |
Возвращает числовое выражение, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static ValueExp |
value |
Возвращает числовое выражение, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static ValueExp |
value |
Возвращает числовое выражение, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static ValueExp |
value |
Возвращает числовое выражение, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static ValueExp |
value |
Возвращает числовое выражение, которое может использоваться в любом вызове Query, ожидающем ValueExp. |
static StringValueExp |
value |
Возвращает новое строковое выражение. |
Подробное описание полей
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
public static QueryExp and(QueryExp q1, QueryExp q2)
- Параметры:
-
q1- Выражение запроса. -
q2- Другое выражение запроса. - Возвращает:
- Конъюнкцию двух аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.AndQueryExp.
or
public static QueryExp or(QueryExp q1, QueryExp q2)
- Параметры:
-
q1- Выражение запроса. -
q2- Другое выражение запроса. - Возвращает:
- Дизъюнкцию двух аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.OrQueryExp.
gt
public static QueryExp gt(ValueExp v1, ValueExp v2)
- Параметры:
-
v1- Выражение значения. -
v2- Другое выражение значения. - Возвращает:
- Ограничение "больше чем" для аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryRelQueryExp с
relOpравнымGT.
geq
public static QueryExp geq(ValueExp v1, ValueExp v2)
- Параметры:
-
v1- Выражение значения. -
v2- Другое выражение значения. - Возвращает:
- Ограничение "больше или равно" для аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryRelQueryExp с
relOpравнымGE.
leq
public static QueryExp leq(ValueExp v1, ValueExp v2)
- Параметры:
-
v1- Выражение значения. -
v2- Другое выражение значения. - Возвращает:
- Ограничение "меньше или равно" для аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryRelQueryExp с
relOpравнымLE.
lt
public static QueryExp lt(ValueExp v1, ValueExp v2)
- Параметры:
-
v1- Выражение значения. -
v2- Другое выражение значения. - Возвращает:
- Ограничение "меньше чем" для аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryRelQueryExp с
relOpравнымLT.
eq
public static QueryExp eq(ValueExp v1, ValueExp v2)
- Параметры:
-
v1- Выражение значения. -
v2- Другое выражение значения. - Возвращает:
- Ограничение "равно" для аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryRelQueryExp с
relOpравнымEQ.
between
public static QueryExp between(ValueExp v1, ValueExp v2, ValueExp v3)
- Параметры:
-
v1- Выражение значения, которое находится "между" v2 и v3. -
v2- Выражение значения, представляющее границу ограничения. -
v3- Выражение значения, представляющее границу ограничения. - Возвращает:
- Ограничение, что v1 находится между v2 и v3. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BetweenQueryExp.
match
public static QueryExp match(AttributeValueExp a, StringValueExp s)
?", "*", "[", каждый из которых может быть экранирован с помощью "\"; классы символов могут использовать "!" для отрицания и "-" для диапазона. (* для любой последовательности символов, ? для одиночного произвольного символа, [...] для последовательности символов). Например: a*b?c будет соответствовать строке, начинающейся с символа a, за которым следует любое количество символов, за которым следует b, любой одиночный символ и c.- Parameters:
-
a- Выражение атрибута -
s- Выражение строкового значения, представляющее ограничение соответствия - Returns:
- Выражение запроса, которое представляет ограничение соответствия строковому аргументу. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.MatchQueryExp.
attr
public static AttributeValueExp attr(String name)
Возвращает новое выражение атрибута. См. AttributeValueExp для подробного описания семантики выражения.
Вычисление этого выражения для заданного objectName включает выполнение MBeanServer.getAttribute(objectName,
name).
- Parameters:
-
name- Имя атрибута. - Returns:
- Выражение атрибута для атрибута с именем
name.
attr
public static AttributeValueExp attr(String className, String name)
Возвращает новое выражение квалифицированного атрибута.
Вычисление этого выражения для заданного objectName включает выполнение MBeanServer.getObjectInstance(objectName) и MBeanServer.getAttribute(objectName,
name).
- Parameters:
-
className- Имя класса, содержащего атрибут. -
name- Имя атрибута. - Returns:
- Выражение атрибута с именем name. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.QualifiedAttributeValueExp.
classattr
public static AttributeValueExp classattr()
Возвращает новое выражение атрибута класса, которое может быть использовано в любом вызове запроса, ожидающем ValueExp.
Вычисление этого выражения для заданного objectName включает выполнение MBeanServer.getObjectInstance(objectName).
- Returns:
- Выражение атрибута класса. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.ClassAttributeValueExp.
not
public static QueryExp not(QueryExp queryExp)
- Parameters:
-
queryExp- Ограничение для отрицания. - Returns:
- Отрицаемое ограничение. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.NotQueryExp.
in
public static QueryExp in(ValueExp val, ValueExp[] valueList)
- Parameters:
-
val- Ограничиваемое значение. -
valueList- Массив ValueExps. - Returns:
- QueryExp, представляющий ограничение. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.InQueryExp.
value
public static StringValueExp value(String val)
- Parameters:
-
val- Строковое значение. - Returns:
- Объект ValueExp, содержащий строковый аргумент.
value
public static ValueExp value(Number val)
- Parameters:
-
val- Экземпляр Number. - Returns:
- Объект ValueExp, содержащий аргумент. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.NumericValueExp.
value
public static ValueExp value(int val)
- Parameters:
-
val- Целочисленное значение. - Returns:
- Объект ValueExp, содержащий аргумент. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.NumericValueExp.
value
public static ValueExp value(long val)
- Parameters:
-
val- Длинное целое значение. - Returns:
- Объект ValueExp, содержащий аргумент. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.NumericValueExp.
value
public static ValueExp value(float val)
- Parameters:
-
val- Плавающее значение. - Returns:
- Объект ValueExp, содержащий аргумент. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.NumericValueExp.
value
public static ValueExp value(double val)
- Parameters:
-
val- Двойное значение. - Returns:
- Объект ValueExp, содержащий аргумент. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.NumericValueExp.
value
public static ValueExp value(boolean val)
- Parameters:
-
val- Булево значение. - Returns:
- Объект ValueExp, содержащий аргумент. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BooleanValueExp.
plus
public static ValueExp plus(ValueExp value1, ValueExp value2)
- Parameters:
-
value1- Первый операнд '+'. -
value2- Второй операнд '+'. - Returns:
- ValueExp, представляющий сумму или конкатенацию двух аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryOpValueExp с
opравнымPLUS.
times
public static ValueExp times(ValueExp value1, ValueExp value2)
- Parameters:
-
value1- Первый операнд '*'. -
value2- Второй операнд '*'. - Returns:
- ValueExp, представляющий произведение. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryOpValueExp с
opравнымTIMES.
вычитание
public static ValueExp minus(ValueExp value1, ValueExp value2)
- Параметры:
-
value1- Первый операнд «-». -
value2- Второй операнд «-». - Возвращает:
- ValueExp, представляющий разность двух аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryOpValueExp с
opравнымMINUS.
деление
public static ValueExp div(ValueExp value1, ValueExp value2)
- Параметры:
-
value1- Первый операнд «/». -
value2- Второй операнд «/». - Возвращает:
- ValueExp, представляющий частное двух аргументов. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.BinaryOpValueExp с
opравнымDIV.
initialSubString
public static QueryExp initialSubString(AttributeValueExp a, StringValueExp s)
- Параметры:
-
a- Выражение атрибута. -
s- Выражение строкового значения, представляющее начало строкового значения. - Возвращает:
- Ограничение, что a соответствует s. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.MatchQueryExp.
anySubString
public static QueryExp anySubString(AttributeValueExp a, StringValueExp s)
- Параметры:
-
a- Выражение атрибута. -
s- Выражение строкового значения, представляющее подстроку. - Возвращает:
- Ограничение, что a соответствует s. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.MatchQueryExp.
finalSubString
public static QueryExp finalSubString(AttributeValueExp a, StringValueExp s)
- Параметры:
-
a- Выражение атрибута. -
s- Выражение строкового значения, представляющее конец строкового значения. - Возвращает:
- Ограничение, что a соответствует s. Возвращаемый объект будет сериализован как экземпляр закрытого класса javax.management.MatchQueryExp.
isInstanceOf
public static QueryExp isInstanceOf(StringValueExp classNameValue)
Пример: чтобы найти MBean, являющиеся экземплярами NotificationBroadcaster, используйте 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
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.management/javax/management/Query.html