问题标签 [aop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1946 浏览

java - 如何使用 aspectJ 快速修改已编译的 java 类行为

如何使用 aspectJ 为某些 java 应用程序临时添加功能?像创建方面,用ajc编译,使用java命令和一些额外的开关来应用方面?

0 投票
2 回答
4705 浏览

hibernate - 如何使用 CurrentSessionContext/SpringSessionContext 和 HibernateDaoSupport 来拦截对 getCurrentSession() 的调用

我在 Spring 中使用 HibernateDaoSupport 进行 Spring-Hibernate 集成。我需要拦截所有 getCurrentSession 调用并启用过滤器并设置过滤器参数值。

Hibernate 支持 CurrentSessionContext 实现来拦截 getCurrentSession 调用。Spring 提供了一个名为 SpringSessionContext 的实现。但是当使用 HibernateDaoSupport 时,Spring 有自己的 SessionHolder 机制,并且 getCurrentSession() 永远不会被调用,并且拦截永远不会起作用。有解决方法吗?

0 投票
3 回答
925 浏览

spring - Spring依赖注入或方面编程

我需要几个类中的方法,这些方法必须始终遵循特定的前后模式。

公共无效方法(X x,Y y){

// ************重复部分开始******************/

AFrameworkClass aFrameworkClass = new AFrameworkClass (this.memberVariable,"SomeString");

尝试 {

// ************重复部分结束 ******************/

// ************重复部分开始******************/

} 最后 { aFrameworkClass.doCleanup();

}

// ************重复部分结束 ******************/

}

是否可以使用 Spring 框架来完成此方法中重复部分的逻辑,而不必在我的各种类中一遍又一遍地编写这些代码?如果有怎么办?

0 投票
2 回答
7548 浏览

java - 切入点不适用于 Spring AOP

为了使用 Spring AOP 实现 Logging,我遵循了这些简单的步骤。但它似乎不起作用。任何帮助都会很有用

1) 创建MyLoggingAspect

}

2)创建了一个我想要记录的类( TixServiceImpl )

3)创建了一个spring-aspectj.xml文件

4)创建了一个简单的测试客户端(TixClient

5)它给了我以下输出

0 投票
6 回答
1234 浏览

c# - 对 C# 的开源面向方面库的建议

对 c# 的开源面向方面库的任何建议。谢谢

0 投票
3 回答
663 浏览

c# - 向 Spring.Net 中的递归方法注入建议?

我正在尝试使用 Spring.NET 对 AOP 的支持来执行依赖注入/控制反转/面向方面的编程(对于大量流行语感到抱歉-也许我会发布一个单独的问题,要求某人澄清区别:)) .

具体来说,我想拦截一个递归方法调用,以便每次调用该方法时,都会调用 AOP 建议/拦截器。

除了第一个方法调用之外,Spring.Net 似乎没有拦截任何东西。我认为Spring.Net 每个实例只维护一个拦截器链,并且在第一个方法调用完成之前不再调用任何拦截器。

是否有人有任何关于让每个方法调用(包括递归调用)触发拦截器(建议)的信息?

如果有帮助,我可以提供代码/示例输出。谢谢!

0 投票
2 回答
748 浏览

.net - 我应该使用 Spring.Net AOP Throws 建议吗?

背景

我有一个提供某些 CRM 服务的组件 - specificCRM。我有一个实现我的 IGeneralCRM 接口的特定CRMAdapter。

另一个组件 generalCRM 通过 IGeneralCRM 公开 CRM 功能,并使用 Spring.Net 注入 specificCRMAdapter 以提供此类功能。

问题

如果特定 CRM 组件失败,我希望能够捕获异常。我是否应该实施 Spring.Net AOP 抛出建议来完成此任务,或者我是否过度设计问题,因为我需要做的只是捕获异常。

一种或另一种方式有什么好处吗?

0 投票
1 回答
1554 浏览

java - 第三方类的 AOP

我在 spring 中使用了 AOP,没有遇到任何实际问题,主要用于事务管理,这很有吸引力。

我的问题是……到目前为止,我看到的关于 AOP 的唯一示例是切入您自己创建的类。是否可以在第三方库中切入一个类,例如数据库连接类。上下文是我希望在 oracle 数据源执行对数据库的调用时创建一些日志并收集信息,不幸的是,该调用包含在一堆 oracle 类文件中。执行 SQL 时,您将如何切入此类/方法?

0 投票
3 回答
5217 浏览

c# - Cool PostSharp方面

我正在寻找有趣的 PostSharp 方面 - 任何您认为有用且不介意分享的内容。

0 投票
2 回答
3650 浏览

java - 使用 aspectj 分析选定的方法

我想使用 aspectj 来分析一个库。我的计划是用注释标记需要分析的方法:

@Profiled("logicalUnitOfWork")

然后有一个方面会在方法之前和之后触发,这些方法将使用logicalUnitOfWork来突出显示已分析的内容。

所以,我的切入点看起来像这样。请注意,我在这里没有注释的论据;这是我不知道该怎么做的事情之一:

被分析的方法将被定义如下:

简而言之,我怎样才能将@Profiled注释的值放入方面?我不需要根据值限制发生的分析,我只需要它对建议可见。另外,我是否需要将注释的保留设置为运行时才能正常工作,还是可以改为使用类级别的保留?