我目前正在为解决方案进行设计,但对某些要求的方法有疑问(在 Spring java 应用程序中)。
我的要求是在调用方法之前执行一个通用过程(例如解析和持久化到 db)。问题是应用程序应该能够配置是否在特定操作之前调用此方法。(这将是可集中配置的,因为我们期望频繁更改)。
我正在考虑使用 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();
}