Json Spring MVC控制器公共逻辑

Json Spring MVC控制器公共逻辑,json,php,spring-mvc,Json,Php,Spring Mvc,我正在试图找出在SpringMVC应用程序中编写公共逻辑的最佳方法。我有一个将被调用的控制器a,它将根据返回数据的请求属性调用任何其他控制器 我希望将响应返回到控制器A中,以便编写通用的扩展逻辑并将其发送回浏览器。我的意图是只在一个地方编写扩展逻辑,并且每个请求都要经过它 您正在寻找的是所谓的HandlerInterceptor或ControllerAdvice 不久前,我在Github上创建了一个小型存储库,它是一个小型Spring引导应用程序,向您展示了使用Spring MVC拦截请求的方法

我正在试图找出在SpringMVC应用程序中编写公共逻辑的最佳方法。我有一个将被调用的控制器a,它将根据返回数据的请求属性调用任何其他控制器


我希望将响应返回到控制器A中,以便编写通用的扩展逻辑并将其发送回浏览器。我的意图是只在一个地方编写扩展逻辑,并且每个请求都要经过它

您正在寻找的是所谓的
HandlerInterceptor
ControllerAdvice

不久前,我在Github上创建了一个小型存储库,它是一个小型Spring引导应用程序,向您展示了使用Spring MVC拦截请求的方法

问题始终是你的主要目标是什么:

  • 是否只需操作输出(例如添加公共字段)?使用
    ControllerAdvice

  • 是否要在前后调用逻辑而不操纵请求?选择过滤器

  • 是否要从根本上更改对象(例如,用另一个对象将其包裹)?转到
    HandlerInterceptor


  • 可能您可以创建抽象控制器类并将公共逻辑或代码放入其中。因此,无论您想在何处使用这些通用代码,只要扩展这个类并使用它即可

    例如:

    public class AbstractController{
    // common logic
    }
    
    public class A extends AbstractController{}
    
    public class B extends AbstractController{}
    
    public class C extends AbstractController{}