您如何将业务逻辑放入Spring拦截器/建议中?这是一种不好的做法吗?
你会在拦截器中放入哪种业务逻辑?只是验证?
我看到拦截器中的业务逻辑更难以看到,因为没有明确的方法调用链。如果您使用域驱动设计,那么业务逻辑也应该在Domain Objects中。
提前致谢。
答案 0 :(得分:0)
作为一般规则,AOP拦截器应该用于跨领域问题,而不是基础业务逻辑。我见过使用AOP的应用程序,有些开发人员发誓。如果发现它们是调试和测试的噩梦。
它很快就会成为一个组合问题,找到相交的不同方面,以组合起来创建所需的用户行为。在业务逻辑调用中,在线性和显式的系统中确定业务逻辑要容易得多。
答案 1 :(得分:0)
拦截器是一种可以在调用流中插入的方法。这通常在方法(或Web请求)之前和之后执行。
拦截器的巨大好处是它们为您提供了一种在不修改方法的情况下为您的业务方法添加功能的方法。码。
我认为拦截器的目的不是拥有业务逻辑,而是要进行前期和后期检查,以便以适当的方式执行业务逻辑。其中一些是验证用户的输入,进行安全检查等。