Arthas ognl(执行ognl表达式)

news2024/11/16 1:48:57

在这里插入图片描述

文章目录

  • 二、命令列表
    • 2.1 jvm相关命令
      • 2.1.12 ognl(执行ognl表达式)
        • 举例1:获取静态属性
        • 举例2:调用静态方法

二、命令列表

2.1 jvm相关命令

2.1.12 ognl(执行ognl表达式)

使用场景

Arthas 的 OGNL(Object-Graph Navigation Library)表达式功能是一个强大的特性,主要用于动态地访问和操作 Java 对象。这一功能在调试和分析 Java 应用程序时尤其有用。OGNL 表达式使得你可以在运行时检索、修改对象的属性,甚至调用对象的方法,所有这些都无需修改源代码或重新启动应用程序。

参数说明:

参数名称参数说明
express执行的表达式
[c:]执行表达式的 ClassLoader 的 hashcode,默认值是 SystemClassLoader
[classLoaderClass:]指定执行表达式的 ClassLoader 的 class name
[x]结果对象的展开层次,默认值 1

使用参考:

  • OGNL 特殊用法请参考:https://github.com/alibaba/arthas/issues/71

  • OGNL 表达式官方指南:https://commons.apache.org/dormant/commons-ognl/language-guide.html

测试代码:

public class OgnlDemo01 {
    public static String s1 = "s1-public-static-v";
    private static String s2 = "s2-private-static-v";
    public static OgnlDemo01 ognlDemo01 = new OgnlDemo01();

    public static void printS12() {
        System.out.println( s1 + "----" + s2);
    }
    public static String getS12() {
        return s1 + "----" + s2;
    }
    public static String setS12(String s1, String s2) {
        OgnlDemo01.s1 = s1;
        OgnlDemo01.s2 = s2;
        return s1 + "----" + s2;
    }
}
举例1:获取静态属性

基础语法

ognl ‘@全路径类目@静态属性名’

[arthas@1176]$ ognl '@com.kerwin.arthas.demo.OgnlDemo01@s1'     
@String[s1-public-static-v]
举例2:调用静态方法

基础语法

ognl ‘@全路径类目@静态方法名(“参数”)’

[arthas@1176]$ ognl '@com.kerwin.arthas.demo.OgnlDemo01@getS12()'                                                                           
@String[s1-public-static-v----s2-private-static-v] 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2160207.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Vue系列五】—Vue学习历程的知识分享!

前言 本篇文章讲述前端工程化从模块化到如今的脚手架的发展,以及Webpack、Vue脚手架的详解! 一、模块化 模块化就是把单独的功能封装到模块(文件)中,模块之间相互隔离,但可以通过特定的接口公开内部成员…

黑马智数Day2

表单基础校验实现 基础双向绑定 v-model <el-input v-model"formData.username" /> <script> export default {name: Login,data() {return {formData: {username: ,password: ,remember: }}} } </script> 表单校验配置 按照业务要求编写校验规…

231. 2 的幂 简单递归 python除法的类型

已解答 简单 相关标签 相关企业 给你一个整数 n&#xff0c;请你判断该整数是否是 2 的幂次方。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 如果存在一个整数 x 使得 n 2x &#xff0c;则认为 n 是 2 的幂次方。 示例 1&#xff1a; 输入&…

【ollama 在linux 上离线部署 本地大模型】

本文继续来讲如何在linux上部署离线本地智能大模型&#xff0c;前篇如下&#xff1a;window上部署离线大模型 首先还是安装ollama linux版本&#xff0c;如果完全离线的话&#xff0c;可以从github上下载一个linux 版本的压缩包传上去 git hub上搜索ollama 找到右下角 找到li…

Centos/fedora/openEuler 终端中文显示配置

注意&#xff1a;这里主要解决的是图形界面、远程登录界面的中文乱码问题 系统原生的终端&#xff08;如虚拟机系统显示的终端&#xff09;&#xff0c;由于使用的是十分原始的 TTY 终端&#xff0c;使用点阵字体进行显示&#xff0c;点阵字体不支持中文&#xff0c;因此无法显…

用友与万里汇达成战略合作,共创出海企业司库管理新篇章

新加坡 2024年9月23日 在全球数字化浪潮的推动下&#xff0c;中国企业正加速融入全球贸易体系&#xff0c;面对复杂多变的国际市场环境&#xff0c;寻求更高效、便捷的跨境贸易解决方案成为众多出口企业的迫切需求。 9月23日&#xff0c;用友网络科技股份有限公司&#xff08…

KDD2024 时序论文

1、Generative Pretrained Hierarchical Transformer for Time Series Forecasting paper: https://dl.acm.org/doi/abs/10.1145/3637528.3671855 code&#xff1a;GitHub - SiriZhang45/FRNet: Code Implementation of FRNet 2、Fredformer: Frequency Debiased Transforme…

[Redis][持久化][上][RDB]详细讲解

目录 0.前言1.RDB0.是什么&#xff1f;1.触发机制2.流程说明3.RDB文件的处理4.RDB的优缺点 0.前言 Redis ⽀持 RDB 和 AOF 两种持久化机制&#xff0c;持久化功能有效地避免因进程退出造成数据丢失问题&#xff0c;当下次重启时利⽤之前持久化的⽂件即可实现数据恢复 RDB ->…

展锐平台的手机camera 系统isptool 架构

展锐平台的isptool 主要用于支持展锐各代芯片isp的各效果模块快速tuning和参数生成打包。 具体需要&#xff1a; 一、工具段能在线实时预览到调试sensor经过isp 处理后的图像&#xff0c;也就是各模块的参数在当下实时生效&#xff0c;通过工具能在PC 上在线观看到修改的效果。…

[笔记]2024大厂变频器,电机参数一览

注意中心高&#xff0c;在用铁心规格&#xff0c;功率换算表 温升曲线在预防性维护过程能用到 注意各类电流参数,上面双极对&#xff0c;下面3极对。 另一种极对数 4极对的电机参数可参考&#xff0c;不常用。 emc滤波&#xff0c; Sto,通讯接口 颜色区分的接口设计 一组新强…

基于MaxScale搭建MariaDB读写分离集群的方法【2024年最新版】

1、什么是MaxScale MaxScale是MariaDB数据库的一个中间件&#xff0c;为MariaDB提供代理服务&#xff0c;主要可以实现读写分离和一定的负载均衡功能&#xff0c;其中读写分离可将读操作和写操作分离到不同的数据库服务器上&#xff0c;以提高系统的整体性能和扩展性&#xff…

Pandas的入门操作-DataFrame对象

目录 类型 通过 pd.read_csv(xxx)返回df 将Series对象通过to_frame()转成df 使用列表 加元组返回df 使用字典返回df DataFrame对象的常用属性和方法 常用属性 常用方法 实例 DataFrame对象的运算 加载数据 字符串的运算 字符串和数字(会报错) 根据下表获取数据 类…

第 1 章:Vue 核心

1. Vue 简介 1.1. 官网 英文官网: https://vuejs.org/中文官网: https://cn.vuejs.org/&#xff1a;中文官网里面【教程】和【API】是比较重要的。用到api就去查询&#xff0c;实践当中记忆更牢靠。 风格指南&#xff1a;官方推荐写的一个代码风格cookbook&#xff1a;编写v…

浙江省计算机三级网络及安全技术资料(最后有我考完后的想法)

还有一周就要考试了&#xff0c;网上几乎找不到浙江省的计算机三级网络及安全技术的复习资料&#xff0c;大部分都是全国计算机三级的复习资料&#xff0c;气得我直接对着大纲一部分一部分找过去。以后的友友们需要的自取&#xff0c;为了能够顺利通过浙江省计算机三级考试&…

『功能项目』按钮的打开关闭功能【73】

本章项目成果展示 我们打开上一篇72QFrameWork制作背包界面UGUI的项目&#xff0c; 本章要做的事情是制作打开背包与修改器的打开关闭按钮 首先打开UGUICanvas复制button按钮 重命名为ReviseBtn 修改脚本&#xff1a;UIManager.cs 将修改器UI在UGUICanvas预制体中设置为隐藏 运…

FP7208:升压汽车车灯方案 高效稳定的电力支持

前言 近年来随着汽车的不断普及&#xff0c;车灯方面也在不断发展&#xff0c;车灯对于汽车不仅是外观件更是汽车主动安全的重要组成部分。灯光在保证照亮前部道路的同时&#xff0c;还要确保不对对面车辆产生眩目影响。同时需要针对不同路况和不同载荷引起的灯光偏离进行调整&…

Linux:文件描述符详解

相关阅读 Linuxhttps://blog.csdn.net/weixin_45791458/category_12234591.html?spm1001.2014.3001.5482 Linux中的所有进程&#xff0c;都拥有自己的文件描述符(File Descriptor, FD)&#xff0c;它是操作系统在管理进程和文件时的一种抽象概念。每个文件描述符由一个非负整…

胤娲科技:DeepMind的FermiNet——带你穿越“薛定谔的早餐桌”

当AI遇上量子迷雾&#xff0c;FermiNet成了你的“量子导航仪” 想象一下&#xff0c;你早晨醒来&#xff0c;发现家里的厨房变成了薛定谔的实验室&#xff0c;你的咖啡杯和吐司同时处于“存在与不存在”的叠加态。 你伸手去拿&#xff0c;却不确定会不会摸到冰冷的空气或是热腾…

文献笔记 - Reinforcement Learning for UAV Attitude Control

这篇博文是自己看文章顺手做的笔记 只是简单翻译和整理 仅做个人参考学习和分享 如果作者看到觉得内容不妥请联系我 我会及时处理 本人非文章作者&#xff0c;文献的引用格式如下&#xff0c;原文更有价值 Koch W, Mancuso R, West R, et al. Reinforcement learning for UA…

前端——表单和输入

今天我们来学习web前端中的表单和输入 表单 HTML 表单用于收集用户的输入信息&#xff0c;用表单标签来完成服务器的一次交互。 HTML 表单表示文档中的一个区域&#xff0c;此区域包含交互控件&#xff0c;将用户收集到的信息发送到 Web 服务器。 HTML 表单通常包含各种输入…