AspectJ 注释:切入点参数
AspectJ annotations: Pointcut params
我正在尝试使用 AspectJ 记录登录操作。我需要获取登录用户。我试过了,但没用。永远不会执行连接点。
@Aspect
public class LoginActivityAspect {
@Pointcut(value = "call(void com.android.project.activities.LoginActivity.loginSuccess(String)) && this(username)", argNames = "username")
public void loginSuccess(String username) {}
@Before(value = "loginSuccess(username)")
public void logLoginSuccess(username) {
logger.debug("loginSuccess", "Login success: " + username);
}
}
在LoginActivity
我有这个方法:
public void loginSuccess(String username){
//DO STUFF
}
我做错了什么?谢谢
已解决!对不起,我是 AOP 新手。
我把切入点修改成这样:
@Pointcut(value = "call(void com.android.project.activities.LoginActivity.loginSuccess(String)) && args(username)")
public void loginSuccess(String username) {}
我正在尝试使用 AspectJ 记录登录操作。我需要获取登录用户。我试过了,但没用。永远不会执行连接点。
@Aspect
public class LoginActivityAspect {
@Pointcut(value = "call(void com.android.project.activities.LoginActivity.loginSuccess(String)) && this(username)", argNames = "username")
public void loginSuccess(String username) {}
@Before(value = "loginSuccess(username)")
public void logLoginSuccess(username) {
logger.debug("loginSuccess", "Login success: " + username);
}
}
在LoginActivity
我有这个方法:
public void loginSuccess(String username){
//DO STUFF
}
我做错了什么?谢谢
已解决!对不起,我是 AOP 新手。
我把切入点修改成这样:
@Pointcut(value = "call(void com.android.project.activities.LoginActivity.loginSuccess(String)) && args(username)")
public void loginSuccess(String username) {}