小编sma*_*uel的帖子

AspectJ切入点 - 获取对joinpoint类和名称的引用

我正在使用@AspectJ样式来编写方面,以处理我们的应用程序中的日志记录.基本上我有一个切入点设置如下:

@Pointcut("call(public * com.example..*(..))")
public void logging() {}
Run Code Online (Sandbox Code Playgroud)

然后像之前和之后的建议一样:

@Before("logging()")
public void entering() {...}
...
@After("logging()")
public void exiting() {...}
Run Code Online (Sandbox Code Playgroud)

我想以下列格式创建这些方法的日志:

logger.trace("ENTERING/EXITING [" className + "." + methodName "()]");
Run Code Online (Sandbox Code Playgroud)

问题是我不知道如何获取类和方法名称的引用.我试过了:

joinPoint.getThis().getClass()
Run Code Online (Sandbox Code Playgroud)

但这似乎返回了调用者的类名.

class A {
    public void a() {
        B.b();
    }
}


class B {
    public void b() {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

会导致以下日志

ENTERING [A.b()]
Run Code Online (Sandbox Code Playgroud)

有人可以提供一些关于如何获得实际的连接点类和方法名称的帮助

logging aop aspectj

19
推荐指数
1
解决办法
2万
查看次数

Maven - 将pom的所有子模块包含在另一个模块中作为依赖项

我们有一个maven模块,设置如下:

a (parent)
  -> b (submodule)
  -> c (submodule)
  -> d (submodule)
Run Code Online (Sandbox Code Playgroud)

这个子模块列表设置为随着时间的推移而增长(到20个左右的列表).我们有另一个模块,它将包含a的所有子模块作为依赖项.有没有一种巧妙的方法,而不是必须手动保持子模块列表与依赖项列表同步.即是否有任何方式将a和所有子模块包含为依赖?

maven

12
推荐指数
2
解决办法
6710
查看次数

单击JCheckBox时执行什么方法

我编写了一个扩展JCheckBox的类,现在我想要覆盖单击复选框时执行的方法.我试过'setSelected'和'doClick',但是没有像我期望的那样.

任何帮助是极大的赞赏.

java swing

5
推荐指数
1
解决办法
3421
查看次数

标签 统计

aop ×1

aspectj ×1

java ×1

logging ×1

maven ×1

swing ×1