dynamic-proxy相关内容

什么是动态代理类,我为什么要使用一个?

使用动态代理的用例是什么? 它们与字节码生成和反射有何关系? 有什么推荐的读物吗? 解决方案 我强烈推荐这个 资源. 首先,您必须了解代理模式的用例.请记住,代理的主要目的是控制对目标对象,而不是增强功能目标对象.访问控制包括同步、认证、远程访问(RPC)、延迟实例化(Hibernate、Mybatis)、AOP(事务). 与静态代理相比,动态代理生成的字节码需要在 ..
发布时间:2021-12-22 09:07:40 Java开发

我应该使用实体框架 4.1 和 MVC3 启用还是禁用动态代理?

有人可以提供一些建议或指出一些有助于做出此决定的博客/文章吗?代理对我来说似乎很陌生,我很犹豫要不要使用它们.我喜欢通过在我的模型中使用虚拟属性来控制延迟加载的能力,但这几乎是我能看到的所有好处.我的应用程序是一个简单的 MVC Web 应用程序,当实体经历状态更改时,我不需要将任何挂钩连接到上下文中. 无论如何,这是我现在非常有限的利弊列表,如果我对其中任何一个不满意,请告诉我. 优 ..

AOP for C# dotnet core 2.0,在方法体运行之前访问方法参数值

这是我的方法,我正在尝试验证 componentToSave(或访问方法参数值)并在方法主体运行之前抛出异常. public Component SaveComponent(Component componentToSave) {...} 我尝试使用 PostSharp,但它不是免费的,还有其他库依赖 AutoFac 作为 IoC,但在我当前的设置中,我使用的是 dotnet core 的内置 ..
发布时间:2021-11-24 15:43:30 C#/.NET

使用AOP技术拦截ADO.Net

我有相当大的代码库,使用各种不同的 ADO 技术(即一些 EF,在某些情况下直接使用 ADO.Net). 我想知道是否有任何方法可以全局拦截任何 ADO.Net 调用,以便我可以开始审核信息,例如执行的确切 SQL 语句、花费的时间、返回的结果等. 主要想法是,如果我能做到这一点,我就不必更改任何现有代码,而且我应该能够拦截/包装 ADO.Net...这可能吗? > 编辑 有 ..
发布时间:2021-11-11 04:38:29 C#/.NET

AOP for C# dotnet core 2.0,在方法体运行之前访问方法参数值

这是我的方法,我正在尝试验证 componentToSave(或访问方法参数值)并在方法主体运行之前抛出异常. public Component SaveComponent(Component componentToSave) {...} 我尝试使用 PostSharp,但它不是免费的,还有其他库依赖 AutoFac 作为 IoC,但在我当前的设置中,我使用的是 dotnet core 的内置 ..
发布时间:2021-11-11 04:29:08 C#/.NET

Java动态代理的性能代价

许多现代框架(Spring、Hibernate)通过使用 Java 动态代理提供了非常好的动态行为,但与之相关的确切性能成本是多少?是否有可用于 Sun JVM 的公共基准测试? 解决方案 几点提示: 揭穿谣言:代理影响性能(也看看评论) Java 理论与实践:使用动态代理进行装饰 对动态代理的成本进行基准测试 ..
发布时间:2021-11-11 04:25:40 Java开发

如何在运行时替换方法实现?

我想要属性 getter 和方法,我可以用我自己的自定义属性装饰它们,并根据该属性的存在用不同的实现替换方法主体.此外,不同的实现将需要知道赋予自定义属性的构造函数参数,用于装饰方法. 这显然可以用 AOP 来完成,比如 PostSharp 或 LinFu,但我想知道是否有一种方法可以做到这一点,而不涉及构建后处理步骤,因为添加这比我更喜欢的项目复杂化. 解决方案 使用传统的 .Ne ..
发布时间:2021-11-11 04:19:16 C#/.NET

为什么简单设置然后在动态代理上获取不持久? (使用TinkerPop Frames JavaHandler)

我想在实现VertexFrame的类上添加简单的getter和setter,我为此使用了JavaHandlers.对于那些方法,我不想与数据库进行任何交互.不幸的是,没有@Ignore之类的东西,所以我没有意外的注释异常.当我在代理服务器上设置某些内容并在经过反射后立即执行获取操作时,将不会存储任何内容.可能是我不应该使用JavaHandlers,而是使用其他东西.Btw manager.fram ..

XML配置的Java配置类似物不起作用

TL/DR:问题归结为创建自定义Spring范围,将具有prototype范围的Bean注入到具有proxyMode = ScopedProxyMode.TARGET_CLASS的单例中,但仍在配置的Java配置版本中获得单例(尽管它在XML上工作正常). 更新:问题已解决,请参见答案. 我正在使用jBehave为我们的Spring应用程序编写BDD测试方案.我们最近认为在执行测试方案 ..
发布时间:2020-06-13 18:44:18 Java开发

PHP:使用__call覆盖父方法

我想以某种方式隐藏父方法,以便为父类上定义的方法调用子类的__call魔术方法.例如: class C { function foo() { echo "foo\n"; } } class D extends C { function __call( $method, $args ) { echo "called $name\n"; } } $d = new D(); $d->f ..
发布时间:2020-06-13 18:44:12 PHP

使用JDK动态代理实现equals()

这是有史以来第一次,我必须使用标准的JDK动态代理来实现自己的代理类.除了一个细节:equals(...)方法之外,它工作得还不错. 让我们假设我们有一个像这样的简单接口,我们想代理它: public interface MyInterface { public String getID(); public void setID(String id); } ..., ..
发布时间:2020-06-13 18:44:02 Java开发

如何从.Net中的第三方库拦截对非虚拟方法的调用?

我认为我需要的是.net人们所谓的“透明动态代理",但是到目前为止,我所见过的所有实现(Castle DynamicProxy,Spring.NET AOP等)都要求我至少执行以下一项操作:这些: 将拦截的方法声明为虚拟方法 包装类并创建包装器实例,而不是包装的类 更改继承或实现接口 很明显,如果调用方和被调用方都是非虚拟的,并且来自第三方封闭源代码库,那么这种情况将无济于事. ..
发布时间:2020-06-13 18:43:40 C#/.NET

有没有一种方法可以创建支持接口的DynamicObject?

是否可以定义一个从DynamicObject派生并支持接口(ICanDoManyThings)的类,而无需在接口中实现每个方法? 我正在尝试创建一个动态代理对象,并希望通过MyProxyClass.TryInvokeMember的实现来处理此类的方法调用,该实现可以将也可以不将其传递给包装的对象. 这可能吗? 谢谢 解决方案 ImpromptuInterface 确实做到 ..
发布时间:2020-06-13 18:43:35 C#/.NET