aop相关内容

属性设置器的 PostSharp 方面,调用泛型方法

我们有一个基础对象,用于一些类似 MVC 的系统,其中后代中的每个属性都写成这样: public String FirstName{get { return GetProperty("FirstName", ref _FirstName);}set { SetProperty("FirstName", ref _FirstName, value);}} 这样做既是为了调试目的,也是为了通知和验 ..
发布时间:2021-11-11 04:38:11 C#/.NET

围绕建议并继续调用:aspectJ,它是如何工作的?

我一直试图弄清楚 around advice 在 AspectJ 中的作用. 它不像之前和建议那样简单.有人可以简要介绍一下 around 建议的作用,以及 proceed 关键字的用途是什么? 解决方案 非常非正式地,around advice 拦截给定的joinpoint,并且可以注入新行为before,after,以及代替那个joinpoint.proceed 是一个特殊的功能 ..
发布时间:2021-11-11 04:38:08 Java开发

控制器方法的 Spring AOP 传递参数

我有一个控制器如下 @Controller@RequestMapping(value = "/")公共类 HomeController {@RequestMapping("/")公共字符串主页(地图地图){map.put("val2","val2");返回“主页";//这是jsp文件名}} 现在在我的方面类方法中,我想在控制器方法中定义的这个映射变量中放置另一个值 @Aspect公共类用户信 ..
发布时间:2021-11-11 04:38:05 其他开发

在 .net 中使用 AOP 进行日志记录

我厌倦了在我的 c# 应用程序中每个函数的开头使用 Logger.Log("MyMethod") 并开始研究 AOP 如何帮助我. 基本上我想要的是记录进入每个方法(公共和私有).互联网上有很多关于这个的讨论,但我还没有找到任何特定的库,在这些库的帮助下,我可以在我的方法前加上 [Log] 属性,就是这样. Log4PostSharp 看起来很完美,但只是适用于目前不可用的 PostS ..
发布时间:2021-11-11 04:38:02 C#/.NET

GO 的问题!面向方面的框架

如果有人使用 GO!框架,你能帮我.我在 php 5.3.13 上安装框架.演示示例正在运行.但我自己的例子不起作用.Aspect(method beforeMethodExecution) 未执行. 这是我的代码. 主文件: //1 包含内核和所有类如果 (file_exists(__DIR__ .'/../../vendor/autoload.php')) {$loader = ..
发布时间:2021-11-11 04:37:56 PHP

如何使用 PostSharp 拦截基类上的方法调用?

我想使用 PostSharp 为各种类提供 System.Object.ToString 的实现.我创建了一个从 MethodInterceptionAspect 继承的方面,但是当调用 EchoDto.ToString 时,OnInvoke 方法没有被调用. 如何在调用 ToString 时调用 OnInvoke? [数据契约][实现JsonToStringAspect()]公开课 Ec ..
发布时间:2021-11-11 04:37:53 C#/.NET

使用 Spring 和 AspectJ 拦截私有方法

我正在尝试使用 AspectJ 的加载时间编织和 Spring-Boot 和基于注释的配置在私有方法之前执行代码,我正在努力弄清楚为什么我的方面没有被调用. 我的简单方面如下: @Aspect公共类 LoggingAspect {私有静态记录器日志 = LoggerFactory.getLogger(LoggingAspect.class);@Before("execution(priva ..
发布时间:2021-11-11 04:37:51 Java开发

如何自定义 AspectJ aop.xml 位置?

我有与此相关的相同问题:aop.xml 名称和位置? 在答案中,它说: 使用系统属性:-D org.aspectj.weaver.loadtime.configuration=META-INF/myaop.xml “使用系统属性"是什么意思? 创建一个 aop.properties 文件?或者,写在vm选项中? 解决方案 AFAIK 没有 aop.propertie ..
发布时间:2021-11-11 04:37:45 其他开发

@PreAuthorize with hasPermission() 执行代码两次

我想使用 @PreAuthorize Spring 注释来控制我的应用程序中的访问. 问题是,我有很多条件不取决于请求参数,而是取决于数据库实体. 概述: 我有一个 Route 实体,它有 User owner 字段.仅当您是所有者时才能删除 Route. 我已经编写了我的控制器方法: @RequestMapping(value = "/route/remove/{id} ..
发布时间:2021-11-11 04:37:42 其他开发

使用属性向方法添加参数

诚然,这是一个远景.我正在处理一个审计部分,您可以在操作开始和结束时打开和关闭审计记录.我已经很好地装配了它,以便为了审计一个方法,你只需要在它上面添加一个 [Audit(AuditType.Something)] 属性,如果需要,再加上一些其他信息,比如消息.然后,使用 SNAP,我有一个拦截器来处理创建审计对象,然后打开和关闭它. 一位同事提出了一个案例,我们需要在审计中使用非常量消息, ..
发布时间:2021-11-11 04:37:39 C#/.NET

如何在具有受保护方法的 Spring 中注入 JDK 代理类?

我有一组相当奇怪的情况.我将 Spring 3.0.6 与实现和接口的 bean 一起使用.到目前为止,很正常的东西.我的 bean 也有一些受保护的方法.我正在使用一些 AOP(JDK 代理)并且一切正常. 当我想将这个 bean 注入另一个包类时,我的问题就出现了.在正常情况下,我将能够注入实现并访问受保护的方法.遗憾的是,由于是JDK代理的,所以只能基于接口注入. 因为我需要访问 ..
发布时间:2021-11-11 04:37:36 Java开发

为通过 lambda 表达式调用的 Runnable.run 方法执行 @Before 和 @After 方面

说明如何为 Runnable.run 方法创建切入点,以便在 java 8 lambda 表达式中调用 @Before 和 @After 方面. 为 Runnable.run 方法创建切入点 在步骤 1 中为切入点创建 @Before 方面.---> 运行前打印 在步骤 1 中为切入点创建 @Aefore 方面.---> 运行后打印 当下面一行被调用时 executor.runA ..
发布时间:2021-11-11 04:37:27 Java开发

AspectJ 指示符 @args() 在 Spring AOP 中不起作用

我正在学习 Spring 并且我搜索了很多关于如何正确使用 @args() AspectJ 指示符的信息,但我仍然不完全清楚.我对它的了解是,它将关节点匹配限制为使用给定注释类型注释参数的方法的执行.这对我来说似乎不起作用. 所以这是我的文件: Human.java @Component公共课人类{int sleepHours;公共 int 睡眠(字符串 sleepHours){th ..
发布时间:2021-11-11 04:37:24 Java开发

消除重复的 try/catch 代码

编写必须一次又一次处理相同异常的代码总是很无聊. 有没有办法不用try/catch来编写代码,并在方法中添加属性来捕获(和处理)可能发生的各种异常?这听起来像 AOP (Postsharp),这是理想的解决方案吗? 因此,我想编写可以指示异常记录、重新抛出等的位置/方式的类,并且它们从属性和任何基类/接口派生.然后重用这些并将它们应用于整个代码中的不同方法.这将大大提高一致性. ..
发布时间:2021-11-11 04:37:15 C#/.NET

Guice 执行后方法拦截

在 Guice 中,有没有办法让我的 MethodInterceptor::invoke 实现在被拦截的方法执行之后(而不是之前)被调用? 我已将当前代码添加到我的 AbstractModule: bindInterceptor(Matchers.subclassesOf(InterceptedClass.class), Matchers.annotatedWith(MyMethodAnn ..
发布时间:2021-11-11 04:37:09 其他开发