java - 使用 AOP 在选择性方法之前调用公共(public)操作

标签 java spring aop

我目前正在为一个解决方案进行设计,但对某些需求的方法(在 Spring java 应用程序中)有疑问。

我的要求是在调用方法之前执行一个常见的过程(例如解析并持久化到数据库)。问题是应用程序应该能够配置是否在特定操作之前调用此方法。 (这将是集中配置的,因为我们预计会频繁更改)。

我正在考虑使用 AOP 建议来调用此方法以实现选择性方法。

如果有更好的方法来满足此要求,请告诉我。另外请告诉我是否可以在AOP中维护xml中的集中配置。

提前致谢。

最佳答案

是的。使用AOP。

方面类中的方法可能如下所示

@Before("within(pkg1..*)")
public Object  something(ProceedingJoinPoint joinPoint) throws Throwable { 
{
    if(false){
        throw SomeException; // returns with exception; make sure to catch this
    } else {
        joinPoint.proceed(); // Proceeds to execute the method
    }

    joinPoint.proceed();
}

关于java - 使用 AOP 在选择性方法之前调用公共(public)操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11794974/

相关文章:

java - Spring Boot WebSocket - 如何获取客户端订阅通知

Spring AOP : Disadvantages when using it - Spring Features which use Spring AOP do not have this disadvantages?

java - Openshift 应用程序尝试加载已删除的类

.net - .net 项目使用 aop 的性能问题

c# - 如何对 PostSharp 方面进行单元测试?

java - 如何使用 Dagger ?

java - Docker 容器中 PostgreSQL 数据库的正确 JDBC 连接 URL

java - Android中如何管理字符串资源

java - 如何在Java中打印多个不同类型的数组?

java - Jersey 与 Spring 的 REST Web 服务对比