aspectj相关内容

使用AspectJ拦截android中的第三方函数

我一直在尝试使用aspectJ拦截属于我的应用程序一部分的所有第三方函数,但不知何故只能拦截我声明的函数而不是第三方库声明的函数. 我正在使用从 本教程中引用的这个 aspectJ gradle 配置. 这是我的方面的样子: private static final String POINTCUT_METHOD = "execution(* *(..))";@Pointcut(POI ..
发布时间:2021-11-11 04:44:09 Java开发

Spring AOP 控制器执行两次

我的applicationContext如下 有 2 个 Aspect Java 类,LogControllerAspect(用于记录对 Spring 控制器的所有调用)和 LogDAOAspect(用于记录对 DB 的所有调用). @Aspect@服务公共类 LogDAOAspect {私人记录器记录器 = LoggerFactory.getLogger(this.getClass()) ..
发布时间:2021-11-11 04:44:04 其他开发

AOP with AspectJ 是否可以与从 JSF2 中的视图调用的 Managed Bean 中的方法一起使用?

我目前在使用 JSF 2 和 AOP 与 AspectJ 注释的组合时遇到问题.我不知道 Spring AOP 是否在这里发挥作用...(我不太了解 SPRING AOP、ASPECTJ、GOOGLE GUICE 之间的区别...这是另一个问题) 在通过单击 jsf 视图中的表单在我的数据库中添加一些值后,我尝试发送电子邮件.我有一个由 JSF 处理的 managedBean AddPart ..
发布时间:2021-11-11 04:43:51 其他开发

切入点帮助 - AspectJ

我只是对切入点中的参数有点困惑,如果有人能向我解释一下,我将不胜感激... import Java.util.logging.*;导入 org.aspect j.lang.*;公共方面 TraceAspect {private Logger _logger = Logger.getLogger("trace");TraceAspectV2() {_logger.setLevel(Level.AL ..
发布时间:2021-11-11 04:43:48 其他开发

使用 AspectJ 获取对象实例化并访问其相关属性和方法

我们可以使用 AspectJ 创建或实例化对象并访问对象的属性和方法吗?我知道使用 AspectJ 我们可以获取方法的输入参数,但它与创建对象是否相同? 例如,在代码中有这一行 testing test = new testing(); 我想使用 AspectJ 获取测试对象并访问类 testing() 的方法和变量,如方法 aa(). 这是测试类的代码. 包testMaven; ..
发布时间:2021-11-11 04:43:36 Java开发

如何为无法更新任何实例变量的方法编写方面或注释?

如何为无法更新任何实例变量的方法编写方面或注解? 例如我有以下 java 类 公共类 Foo {字符串名称;内部标识;公共获取名称(){返回名称;}} 现在说我想写一个方面,或者一般来说,一些注释称它为 @readOnly ,它可以强制 getName() 方法不修改任何一个 name 或 id 所以如果做 公共类 Foo {字符串名称;内部标识;@只读公共获取名称(){name = ..
发布时间:2021-11-11 04:43:34 Java开发

AspectJ 切入点和建议

如果添加不属于特定类别的项目,我必须强制执行一项政策,发出警告,除了允许和禁止此类添加的三个之外..... 到目前为止,我能够找到这些项目并发出警告......但不知道如何阻止它们被添加...... 例如. 允许的类别鞋子和袜子 但是如果我尝试将蔬菜物品添加到库存中,它应该给我一个警告说“类别不允许../nItem 将不会添加到库存中"..... 然后继续下一个项目.... ..
发布时间:2021-11-11 04:43:30 其他开发

使用 aspectj 拦截带有反射的赋值

当我使用 tomcat 运行应用程序时,它说建议尚未应用,因此我的方面将无法工作.我必须在任何地方配置它吗?我没有做任何事情,所以我不知道什么代码可能有用. 谢谢! 编辑 我刚刚发现了如何解决这个问题,即使它说尚未应用方面,当我调用 setter 时它也能工作,但是我在为此使用反射时遇到了问题. 我有一个方面可以将 setter 拦截到一个运行良好的字段,但是当从 Gson ..
发布时间:2021-11-11 04:43:21 Java开发

在 AspectJ 中排除带注释的方法

嗨,我想排除这里的注释方法是代码. @Aspect公共类 ExceptionHandlingAspect {私有静态最终字符串标记 = ExceptionHandlingAspect.class.getName();@Pointcut("执行(* android.mobile.peakgames.net.aspectjandroid.AspectActivity.*(..)) " +"&& !@ ..
发布时间:2021-11-11 04:42:51 Java开发

如何配置aspectj忽略getter和setter

我有一个方面目前可以捕获我的包中的所有公共方法执行. 我想修改它以排除 setter 和 getter,所以我尝试了,这些是我尝试过的变体: 这个有效,但显然对 setter 或 getter 没有任何作用. @Around("execution(public * *(..)) && !within(com.walterjwhite.logging..*)") 这不会编译: @A ..
发布时间:2021-11-11 04:42:33 Java开发

AspectJ - 无法识别连接点表达式中的注释

在我的一个方面,我有以下方法: @Before("执行(* org.xx.xx.xx..*.*(@Standardized (*),..))")public void standardize(JoinPoint jp) 抛出 Throwable {} 目标是找到我的应用程序包的所有方法,这些方法至少有一个用@Standardized 注释的参数(不是用@Standardized 注释的类型不同 ..
发布时间:2021-11-11 04:42:30 其他开发

Spring AOP 和 AspectJ Load-Time Weaving:对于私有方法,around 通知将被调用两次

我将使用 Spring AOP 和 AspectJ Load-Time Weaving 来测量我的代码中特定私有/受保护/公共方法的执行时间. 为了做到这一点,我用一个注释写了以下注释,我将注释应该测量执行时间的方法: package at.scan.spring.aop.measuring;导入 org.aspectj.lang.ProceedingJoinPoint;导入 java.l ..
发布时间:2021-11-11 04:42:18 Java开发

在另一个方法中调用方法后执行一些操作

我想在一个非公共方法(bar)被调用后做一些特定的动作.此方法在另一个方法 (foo) 中调用.请注意,“bar"和“foo"都是在第三方 jar 文件中定义的. 我尝试在使用 spring 的面向方面编程中使用 @before 注释来做到这一点.但是,我做不到那个. 有人能告诉我在调用 jar 文件中的特定函数后如何做特定的事情(调用特定函数)吗? 解决方案 正如 Gerva ..
发布时间:2021-11-11 04:42:12 Java开发

AspectJ @DeclareParents defaultImpl 代码作为依赖使用时不使用

我目前正在与 AspectJ 合作.我在依赖项中分离了 AspectJ 代码.在该依赖项中,一切都按预期工作.但是一旦我将它导入到另一个项目中,只有某些功能不再起作用.使用@DeclareParents 的defaultImpl 时,接口显示在编译代码中,但不显示默认实现.这是我的代码来显示我的意思(每个代码片段都是它自己的文件): AspectJ 代码: 公共接口IAspect{字符串你 ..
发布时间:2021-11-11 04:42:06 Java开发