在日常开发过程中,经常会遇到需要加字段、加表的情况,不可避免的就需要去刷数据,常用的方法是价格http接口或dubbo接口,外部调用触发割接程序。这里介绍一直更简单的方式,使用spring的注解,把割接程序暴露给jmx,直接用工具连jvm,查看MBean执行割接方法即可。

  1. @ManagedResource 加在Class上,Spring指示向 JMX 服务器注册类的实例
  2. @ManagedOperation 加在Method上,Spring指示将指定方法公开为 JMX 操作(仅get/set方法无效)
  3. @ManagedAttribute 加在Method上,Spring将指定的 bean 属性公开为 JMX 属性(仅get/set方法生效)

一、代码使用示例


import org.springframework.jmx.export.annotation.*;
import org.springframework.stereotype.Service;/*** @author lfg* @version 1.0*/
@Service
@ManagedResource(description = "spring jmx注解的demo类")
public class ManagedDemo {@ManagedOperation(description = "执行方法示例 execReturnString")//@ManagedOperationParameter 仅入参的文档注释,没实际意义@ManagedOperationParameters(value = {@ManagedOperationParameter(name = "paramOne", description = "this is paramOne desc"),@ManagedOperationParameter(name = "paramTwo", description = "this is paramTwo desc")})public String execReturnString(String paramOne, String paramTwo) {return paramOne + "-" + paramTwo;}@ManagedOperation(description = "执行方法示例 execVoid")public void execVoid() {}@ManagedAttribute(description = "ManagedAttribute 使用示例")public String getProperties() {return "this is ManagedAttribute";}}

二、效果展示

以下示例使用Jconsole工具,读者也可以使用自己喜欢的JVM工具,例如JProfiler ,MAT,VisualVM ,jmc等等
如执行报错,使用jmc能看到具体错误原因,作者遇到过aop处理参数有问题,导致@ManagedResource都无法使用的情况

1.@ManagedResource

如图所示MBean中已经暴露出该类了

2.@ManagedOperation

如图所示,jmx中可以填入方法参数,并执行方法,获得返回值。需要注意的是,如想在jmx中执行方法,类上需要加@ManagedResource,把Bean暴露给JMX,否则类都不可见,执行方法就更无从谈起


4. @ManagedAttribute

需要将Bean中属性值暴露出去,或者修改属性值的时候可使用该注解

Spring JMX注解的使用方式:@ManagedResource @ManagedOperation @ManagedAttribute相关推荐

  1. Spring @Value注解的使用方式

    常见用法一: import org.springframework.beans.factory.annotation.Value; import org.springframework.context ...

  2. 利用Spring Hibernate注解packagesToScan的简化自动扫描方式

    发现一种Spring Hibernate 注解的简化方式 原始方式 <property name="annotatedClasses"> <list> &l ...

  3. Spring 使用注解方式进行事务管理

    2019独角兽企业重金招聘Python工程师标准>>> 大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅. 事物注 ...

  4. 第五章 Spring进阶-注解方式实现AOP(1)

    <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 徒弟:师傅,我 ...

  5. Spring 使用注解方式进行事物管理

    Spring 使用注解方式进行事物管理 大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅. 事物注解方式: @Transaction ...

  6. 【Spring注解系列07】Spring注入Bean有哪些方式总结

    给Spring容器中注册组件方式: 1).包扫描+组件标注注解(@Controller/@Service/@Repository/@Component) 2).@Bean 导入的第三方包里面的组件 3 ...

  7. Spring AOP注解方式实现

    简介 上文已经提到了Spring AOP的概念以及简单的静态代理.动态代理简单示例,链接地址:https://www.cnblogs.com/chenzhaoren/p/9959596.html 本文 ...

  8. Spring基于注解的方式二

    Spring基于注解二 上一次介绍了很多的关于spring的基本的注解,这篇文章描述一下关于Spring注解的基本的原理,从简单的例子入手 @Configuration @Import({Color. ...

  9. Spring基于注解的方式一

    Spring基于注解的方式一 Spring注解简介 之前的时候我们学习的Spring都是基于Spring配置文件的形式来编写,现在很多的情况下使用SpringBoot的时候是基于注解的形式,这里我们首 ...

最新文章

  1. 基于nginx实现minio分布式集群访问的负载均衡配置示例
  2. angular的自定义指令---详解
  3. oracle12c安装卡住_12C rac安装卡住了
  4. vue.js 01 模板语法
  5. arm开发板嵌入式 linux 修改开机启动logo,ARM开发板 嵌入式Linux 修改开机启动LOGO...
  6. 用c++实现简单单链表,双链表,二叉树类
  7. Apache JMeter web 应用测试工具使用快速入门
  8. Android4OpenCV实时人脸检测detectMultiScale报错
  9. hive udf 分组取top1_Hive中UDF练习
  10. 通州区机器人比赛活动总结_超燃!通州区中小学机器人大赛圆满落幕
  11. PPT制作设计感需从哪些角度提升呢?
  12. Nessus下载及安装
  13. Excel使用技巧随笔
  14. 1941 Scary Martian Word
  15. win10注入漏洞跳出计算机,win10操作系统本地提权漏洞
  16. 【鼠标右键点击桌面图标时,出现资源管理器未响应】
  17. antd的联级选择器异步调用编辑回显_react-uplod-img 是一个基于 React antd组件的图片上传组件...
  18. PD3.1 140W双C快充解决方案
  19. UNREFERENCED_PARAMETER()宏函数
  20. 程序员成长之旅——C语言三子棋

热门文章

  1. Windows10系统 ADMUI3无法删除
  2. 域名注册、域名实名认证、域名解析流程详解
  3. 增加检测类别?这是一份目标检测的基础指南
  4. RHEL服务篇_DNS服务
  5. iphone访问限制在哪 苹果手机设置访问限制方法
  6. 头条抖音后端技术3面,2021大厂Java面试题精选
  7. 引入jq库,却不起效,底线解决方法
  8. 搭建网站要多少钱?自助建站制作网站要花多少钱?
  9. 中超联赛首轮 山东鲁能一球小胜
  10. 在Linux如何搭建Oracle11g Data Guard