有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

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

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

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


共 (1) 个答案

  1. # 1 楼答案

    听起来你在试图重现spring aspects,看看这个:

    http://docs.spring.io/spring/docs/2.0.x/reference/aop.html

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

    http://www.eclipse.org/aspectj/

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

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

    http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Proxy.html

    然而,我不建议这样做

    顺便说一句,我从来没有听说过一个项目不能容纳junit或某种测试框架。如果您不打算编写单元测试,那么编写大型应用程序的难度将是指数级的