4.1.5. Использование JMX-бинов
С помощью JMX-бинов можно предоставить доступ к некоторой административной функциональности вашего приложения без создания пользовательского интерфейса для нее. Данная функциональность будет также доступна через встроенную JMX-консоль и через внешние инструменты JMX, например jconsole
.
В нашем примере со скидками пользователь, имеющий доступ к JMX-консоли, сможет пересчитывать скидки для всех заказчиков или для заказчика с указанным id.
Studio на данный момент не умеет создавать заготовки JMX-бинов, поэтому все классы и конфигурационные элементы придется создавать вручную в IDE.
См. пример реализации в демо-приложении:

-
DiscountsMBean.java - интерфейс JMX-бина.
-
Discounts.java - реализация JMX-бина.
-
DiscountCalculator.java - бин среднего слоя, вызываемый JMX-бином. JMX-бин мог бы содержать бизнес-логику сам, но мы используем этот делегат для того, чтобы разделять логику с entity listener и JMX бином.
-
spring.xml - в данном файле JMX-бин регистрируется.