gpt4 book ai didi

java - 如何减少 spring boot Controller 中的重复代码

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:00:48 27 4
gpt4 key购买 nike

我刚刚开始为我的服务使用 spring boot。我很少有 Controller 在它们的主体中使用相同的代码。例如,在每个 Controller 中,我必须检查从请求中获取的请求对象是否为空:

if (request == null){
throw new InvalidRequestException("the request object is null");
}

我知道在多个 Controller 中重复代码不是一个好方法,所以我想知道是否有办法防止代码重复,或者 spring boot 是否有解决上述问题的方法。

最佳答案

您正在使用 SpringBoot,因此在您的应用程序中,您定义 @SpringBootApplication 注释的地方,您可以指定下一个 @Bean:

@Bean
public HttpRequestHandler httpRequestHandler () {
return new MyHttpRequestHandler();
}

同时创建 MyHttpRequestHandler 类,您可以在其中创建任何您的逻辑:

public class MyHttpRequestHandler implements HttpRequestHandler {

@Override
public void handleRequest (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
if (request == null) {
throw new InvalidRequestException("the request object is null");
}
}
}

关于java - 如何减少 spring boot Controller 中的重复代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53115256/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com