![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
调试
文章平均质量分 75
天水麒麟姜伯约
这个作者很懒,什么都没留下…
展开
-
JVMTI 实现统计Java类对象实例个数
上述回调函数的第三个参数class_tag可以用来进行对Class进行分组,相同的class_tag对应相同的类对象,从而在FollowReferences的回调函数中完成Class对象实例个数的累加和所占用空间大小的计算。Java没有提供很直接优雅的方式让我们能够去轻易的去获取类对象的实例的数量,也许是出于性能的考虑,也许是这种事情本身没有显示出多大的价值,毕竟不那么常用。当Class参数值为空的时候,返回虚拟机中已装载的类的统计信息集合,当Class参数值不为空的时候,返回该Class的统计信息。原创 2023-02-13 21:22:31 · 1222 阅读 · 0 评论 -
Elasticsearch painless脚本中使用java自定义类函数
并且在使用http api的过程中,集成了各种脚本引擎,极大的提升了数据批量操作的效率以及灵活性,并且允许开发者按照接口规范按照实际需要对脚本引擎进行拓展。比如遇到一些较为复杂的数据处理逻辑时,为了避免在在脚本中使用过长过多的表达式,因为可能容易出现语法上的错误,而且在脚本中加入过多的表达式可能不容易进行调试。可以发现java.lang.String类开放了大部分的方法,java.lang.System类只开放了有限的几个方法,脚本语法简单易上手。这些方法主要是static方法,在脚本中调用的时候使用 "原创 2023-02-10 19:01:01 · 650 阅读 · 1 评论 -
Java代理agent实践
比如我们常用的开发工具idea就可以通过在jvm虚拟机参数中加入了 -javaagent 选项来实现破解,因为idea启动的时候装载了一个jvm进程,这也是破解的前提。这个包功能非常强大,jdk常用的工具在这个包中都有对应的实现,比如javac,jinfo,jar等。这两个方法参数时一致的,在调用loadAgent或者命令行参数指定-javaagent的时候jvm会将控制权转移到这两个方法,在这里,类似的在idea中运行java程序的时候从控制台的命令行参数中也可以找到javaagent的影子。原创 2023-02-08 22:45:46 · 1377 阅读 · 0 评论 -
谷歌浏览器调试vue项目
众所周知,在项目过程中我们常常遇到的一个问题就是本地调试的时候没问题但是发布到线上的时候就不行了。在时间充裕的情况下,我们当然可以慢慢调试,但是那是不可能的。选择完文件夹之后右键点击已打开的test.html标头 选择 "save for overrides" 将test.html保存到我们选的文件夹中。它能够实现 在不改动源码且不用重新打包发布就能改变前端脚本的执行逻辑,这样就大大减少了排错的时间。page页列出了当前浏览器中已打开的网站以及网站的页面文件,此时可以切换到Overrides选项卡。原创 2023-02-07 18:11:46 · 5213 阅读 · 0 评论 -
使用javassist改写类实现拦截sql语句输出实操
众所周知,javassist能够在字节码层面去重新构建一个已经存在的类,同时结合java虚拟机代理Instrumentation 根据类的字节码重定义类的能力。我们可以去动态改写一个类的方法,这个粒度可以精确到代码行。一般我们重定义类,可能希望增加或者减少字段,增加或者减少方法。但是结合我们常用的hotspot虚拟机具体实现,只对重写方法体逻辑生效,也就是我们只能重构类里面已经存在的方法。虽然虚拟机的实现只能局限于这种程度,但是并不意味着它的用途的狭隘,我们仍然能够利用这种支持做最大化的应用。只重写方法体的原创 2022-05-02 13:21:40 · 1660 阅读 · 0 评论 -
window下Java诊断工具arthas 实操心得
1、使用 jad命令反编译java类得到源代码文件 此时注意路径中斜杠只能使用反斜杠jad --source-only com.example.demo.arthas.user.UserController > /tmp/UserController.java2、使用mc内存编译命令编译源文件mc /tmp/UserController.java -d /tmpMc 编译对于tomcat来说仍然可能会失败Mc –c 类的classloaderhash或classloader全限原创 2022-04-19 18:18:09 · 505 阅读 · 0 评论 -
dnspy调试神器在IIS中无源码调试c#程序
1、Download dnSpy 6.1.8dnSpy分32位和64位,根据需要进行下载。下载完dnSpy压缩包之后解压如下建议右键使用管理员权限运行dnSpy.exe此时选择菜单项 调试 > 附加到进程 并弹出以下界面,在搜索框输入w3wp,w3wp.exe是iis进程映像名称 如果搜索列表为空,可以尝试多点几次刷新按钮筛选完成之后 点 右下角附加按钮此时主窗口标题栏 显示 调试中此时选择 调试->窗口->模块将会列出 这个进程的所有托管...原创 2022-04-16 00:47:56 · 1569 阅读 · 0 评论