Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建在Java中每个方法之前和之后运行的自定义注释_Java_Annotations - Fatal编程技术网

创建在Java中每个方法之前和之后运行的自定义注释

创建在Java中每个方法之前和之后运行的自定义注释,java,annotations,Java,Annotations,我有以下要求:在每个方法之前,我需要执行一些设置,在每个方法之后,我需要执行一些清理。例如,在执行每个方法之后,我需要在SQL Server中转储日志 如何为此类重复性任务创建自定义注释 请注意,由于某些设计考虑,我无法在我的应用程序中容纳JUnit。听起来您好像在尝试重新创建spring特性,请参见以下内容: 但是,您可能会觉得在Spring上添加一个依赖项太大了,您可以考虑仅仅依赖于AspectJ: 作为最后一种选择,您可以让您的类实现一个接口,然后编写该接口的“包装器”实现,该实现仅包

我有以下要求:在每个方法之前,我需要执行一些设置,在每个方法之后,我需要执行一些清理。例如,在执行每个方法之后,我需要在SQL Server中转储日志

如何为此类重复性任务创建自定义注释


请注意,由于某些设计考虑,我无法在我的应用程序中容纳JUnit。

听起来您好像在尝试重新创建spring特性,请参见以下内容:

但是,您可能会觉得在Spring上添加一个依赖项太大了,您可以考虑仅仅依赖于AspectJ:

作为最后一种选择,您可以让您的类实现一个接口,然后编写该接口的“包装器”实现,该实现仅包装另一个实现,并执行before/after逻辑。这是迄今为止最简单的方法,我一直都是这样做的

最后一种选择是使用duck类型的代理:

但是,我不建议这样做


另一方面,我从未听说过一个项目不能容纳junit或某种测试框架。如果您不打算编写单元测试,那么在编写大型应用程序时,您将面临一个指数级的困难。

您能否为您提到的自定义包装器实现发布一个小示例