Java字节码检测的替代方案

我正在开始一个项目,必须为了覆盖目的(变量的定义 – 使用等)来检测java应用程序.它必须向应用程序添加跟踪语句和一些逻辑,并可能删除语句.

我已经搜索了仪器Java代码方法,我总是找到关于字节码检测的方法.

我的问题是:这是测试Java应用程序的唯一方法吗?有没有其他方法可以做到这一点?字节码检测相对于其他检测有什么优势?

我可能会使用字节码解决方案,但我想知道其他方法(如果有的话)有什么问题需要精确决定.

谢谢!

最佳答案
接近改变字节码的另一种方法是使用AOP(面向方面​​编程).
主库是AspectJ,也主要定义了该区域.

可能有趣的第三个选项(因为您刚开始使用该程序)正在使用Spring.
这意味着你将需要学习一些关于IOC(控制反转)的内容,但它基本上意味着你不要自己创造你的物体,而是让春天为你做它,它有它的优点,因为当春天是创造它的能力时它可以在创建过程中添加各种各样的东西,而不必在aspectj中自己声明它.

就复杂性而言,我可能会评价它:

>春天(最简单)
> aspectj
>字节码检测(最难)

但谈到能力(力量)时,恰恰相反.例如做一些像减去代码的东西只能使用最后一个(我认为)

相关文章

ArrayList简介:ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增...
一、进程与线程 进程:是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程...
本文为博客园作者所写: 一寸HUI,个人博客地址:https://www.cnblogs.com/zsql/ 简单的一个类...
#############java面向对象详解#############1、面向对象基本概念2、类与对象3、类和对象的定义格式4、...
一、什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错。在java中,阻止当前方法或作用域...
Collection接口 Collection接口 Collection接口 Collection是最基本的集合接口,一个Collection代表一组...