您可以简单地将请求自动连接到EventHandler的字段
@Component
@RepositoryEventHandler
public class ClientEventHandler {
private HttpServletRequest request;
public ClientEventHandler(HttpServletRequest request) {
this.request = request;
}
@HandleBeforeCreate
public void handleClientSave(Client client) {
System.out.println("handling events like a pro");
Enumeration<String> names = request.getHeaderNames();
while (names.hasMoreElements())
System.out.println(names.nextElement());
}
}
在给出的代码中,我使用了最干净的构造器注入,但是Field或Setter注入也应该工作。
哦,我刚刚注意到@Marc在评论中提出了这个建议……但我实际上尝试了:)