发送响应后的Spring Boot处理

时间:2019-01-09 17:09:33

标签: spring spring-boot post-processing

我想向客户端发送响应,然后在Spring Boot中进行长时间运行的清理。有人建议我使用以下模式来解决问题:

    @GetMapping
    public ResponseEntity<Object> get() {
        return ResponseEntity.ok(new Object());
    }

    @Bean
    public MappedInterceptor irrelevantSleepingInterceptor() {
        String[] paths = new String[0];
        return new MappedInterceptor(paths, new HandlerInterceptor() {
            @Override
            public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
                try {
                    Thread.sleep(10000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
    }

除了我的客户仍然等待10秒钟来接收响应的事实外,该代码效果很好。

有人可以建议我在这里做错什么吗?

0 个答案:

没有答案