Skip to content

Latest commit

 

History

History
29 lines (17 loc) · 2.34 KB

using_jmx_beans_recipe.adoc

File metadata and controls

29 lines (17 loc) · 2.34 KB

Использование JMX-бинов

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

В нашем примере со скидками пользователь, имеющий доступ к JMX-консоли, сможет пересчитывать скидки для всех заказчиков или для заказчика с указанным id.

Studio на данный момент не умеет создавать заготовки JMX-бинов, поэтому все классы и конфигурационные элементы придется создавать вручную в IDE.

См. пример реализации в демо-приложении:

using jmx beans 1
  • {proj_business_logic}/blob/master/modules/core/src/com/company/sample/core/jmx/DiscountsMBean.java[DiscountsMBean.java] - интерфейс JMX-бина.

  • {proj_business_logic}/blob/master/modules/core/src/com/company/sample/core/jmx/Discounts.java[Discounts.java] - реализация JMX-бина.

  • {proj_business_logic}/blob/master/modules/core/src/com/company/sample/core/DiscountCalculator.java[DiscountCalculator.java] - бин среднего слоя, вызываемый JMX-бином. JMX-бин мог бы содержать бизнес-логику сам, но мы используем этот делегат для того, чтобы разделять логику с entity listener и JMX бином.

  • {proj_business_logic}/blob/master/modules/core/src/com/company/sample/spring.xml[spring.xml] - в данном файле JMX-бин регистрируется.