问题标签 [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 投票
3 回答
5223 浏览

c# - Microsoft Unity - 将代码转换为 xml

有人可以提供我应该与 Enterprise Library 4.1 中的 Microsoft Unity 应用程序块一起使用的 XML 配置来实现与以下相同的结果吗?

所以代替这个:

我会有这个:

使用 XML 配置文件。

0 投票
3 回答
787 浏览

castle-windsor - Windsor MixIn 是单身人士?

我有一个 MixIn 需要一些状态才能运行。

我是这样注册的。。

当我调用 container.Resolve(of ICat) 时,我得到了 ICat 的代理,它也实现了 IMixin。

但是,如果我再次调用 container.Resolve(of ICat),我会得到一个新的 ICat 代理,但 MyMixin 是相同的实例。(这是有道理的,因为我没有告诉容器以任何方式创建 IMixin)

所以,IMixin 是一个 Singleton,尽管组件的生活方式是 Transient。

我如何通过 Fluent Interface 告诉 Windsor 为组件创建一个新的 MyMixIn 实例?

0 投票
1 回答
534 浏览

c# - 我从哪里开始使用面向方面的编程?

因此,在阅读了一些 PostSharp 文档作为对我之前关于被动日志记录的问题的回答(Ispassive logging possible in .NET?)之后,我被引导到我的下一个问题:

哪里是开始学习面向方面编程的好地方 - 我在 Google 上进行了一些搜索,并阅读了一些文章 - 包括关于 Wikipedia 上的主题的文章,但很多材料似乎假设你有对我似乎遗漏的一些术语的基本理解,以及那些不仅仅直接进入集成的术语,让我不明白我正在集成的到底是什么。

有没有人有任何体面的材料旨在帮助那些在今天之前从未听说过面向方面编程的人了解核心概念、术语/关键字等?即使是鸟瞰图也会有所帮助——即这些是核心概念、要注意的关键字、它们代表什么以及它们如何组合在一起。在那之后,我自己可能会取得一些不错的进展。我对与 .NET 开发相关的 AOP 最感兴趣,因此任何专门针对此的材料都会有所帮助。

TIA

0 投票
4 回答
4155 浏览

java - 一般来说,学习 Spring AOP 或 AOP 的最佳方法是什么?

我有在 Spring 框架中工作的经验,但我发现很难理解 Spring AOP 或 AOP 的基础知识。你们能否向我推荐一些你遇到的好的在线教程/书籍来学习它。

0 投票
1 回答
631 浏览

.net - Spring.NET 和构造函数拦截器

我正在尝试在构造时对对象执行一些 AOP,并找到了 IConstructorInterceptor,它非常适合我想要的东西,但它似乎不起作用(至少在 1.2 版中)。

我还查看了 IObjectPostProcessor 和 IInstantiationAwareObjectPostProcessor,但我找不到任何方法可以在构造时间前后对对象进行处理... IInstantiationAwareObjectPostProcessor 上的 PostProcessPropertyValues 方法很接近,但它只通过 setter 注入的属性不是构造函数 arg 值...

具体来说,我想要的是在实例化之后对对象的引用,同时对注入构造函数的对象的引用。有什么办法可以做到这一点,或者我最好的选择是切换到设置器注入并使用后处理器或 MethodInterceptor?

0 投票
2 回答
1753 浏览

asp.net-mvc - 使用 Asp.Net MVC 进行自动事务的最佳方法是什么?

我对在我的 MVC 应用程序中到处编写以下代码感到恼火。

我想以某种方式制作这款 DRYer。

我为此想到了几种不同的选择。

  1. 一个动作过滤器,以声明方式将某些动作标记为事务性的。
  2. 重写 Controller 基类中的 OnActionExecuting 并一次性使所有操作都具有事务性。

这些都是一个好主意吗?有什么我应该注意的问题吗?第二个选项似乎可能是获得大量死锁的好方法。

哦,是的,我还使用 StructureMap 和自定义控制器工厂将 deps 注入到我的控制器中,以防有人知道以这种方式注入事务的一些技巧。

0 投票
4 回答
4210 浏览

java - 在 Spring AOP 中避免就地切入点表达式

我正在使用 Spring AOP。我给出的切入点如下:

是否可以避免 Spring AOP 中的就地切入点表达式?

0 投票
7 回答
15175 浏览

javascript - Javascript函数钩子

编辑:好的,我相信以下解决方案是有效的:

  1. 使用 jQuery AOP 插件。它基本上将旧函数与钩子一起包装成一个函数三明治,并将其重新分配给旧函数名。这会导致每个新添加的钩子都嵌套函数。
    如果 jQuery 不适合你,那就盗版源码吧,插件里面好像没有 jQuery 依赖,而且源码简单而且很小。

  2. 有一个描述所有钩子及其目标的对象和一个用于存储初始未修改函数的对象。添加新钩子时,将围绕原始函数重做包装,而不是重新包装先前的包装函数。
    您转义嵌套函数,并获取两个对象来处理。如果您经常无序地添加/删除钩子,这也可能意味着更容易处理钩子。

我会选择第一个,因为它已经完成了,我不用担心性能。并且由于原有功能不受影响,即使我切换钩子方法,我只需要重新添加钩子,这可能只是一些简单的搜索和替换操作。


你好,

是否有可能创建一种机制,其中函数 A 可能有一组钩子(将在函数 A 之前/之后执行的函数)?

理想情况下,函数 A 不会意识到挂钩功能,因此我不必修改函数 A 的源代码来调用挂钩。就像是:

几个小时以来,我一直在尝试破解某些东西,但到目前为止还没有运气。

0 投票
2 回答
2656 浏览

java - 在 JSF 应用程序中使用 Spring AOP

考虑一个带有托管 bean FooBean.java 的 JSF Web 应用程序。我在 faces-config.xml 文件中声明了这个“FooBean”。现在,如果我想为 FooBean 的方法添加 Spring AOP 建议,我该怎么做?

  • 我应该添加一个 applicationContext.xml 文件并在其中声明托管 bean 吗?
  • 或者即使我没有在 Spring 配置文件中声明托管 bean,它也会起作用吗?

注意:我创建了一个 Aspect bean 并在切面 bean 中定义了一个像 @Pointcut("within(dummy.web.reporting..*)") 的切入点。

0 投票
4 回答
14259 浏览

c# - C# 中的内置 AOP - 正在开发中吗?

在大型应用程序中,我发现自己真的希望我有内置的 AOP 工具。在 C# 中,你能做的最好的事情就是工厂和 RealProxys、PostSharp、ICorDebug、ICorProfiler 或注入框架。没有干净的内置方式来执行 AOP。

是否有任何迹象(博客文章/内部讨论)表明 AOP 正在进行中?