Spring为每个POST请求创建唯一的@Component

时间:2019-03-15 12:49:28

标签: spring spring-mvc

说我有一个用@Component注释的Spring验证器。每当进入POST请求时,该验证器就会运行。它进入@Autowired到控制器中。

这里的问题是验证器默认为单例。它还包含一个存储所有错误的列表。每次调用此验证器时,列表就会清空。

我担心的是,如果同时出现多个请求,则该验证器会中断。

是否仍然可以利用Spring Boot的功能,但确保每次调用@PostMapping时,实例仅为其自身获取一个新的新鲜验证器?

1 个答案:

答案 0 :(得分:4)

使用

@Component
@Scope(WebApplicationContext.SCOPE_REQUEST)

以确保为每个请求创建一个自己的组件。

@RequestScope
@Component