Я знаю, что в некоторые годы go threadlocal был лучше, но теперь мне интересно, был ли в последних версиях весенней загрузки (я использую 2.2.6) этот код здесь:
@Bean
@RequestScope
public MyPojo(){
return new MyPojo();
}
Действительно эффективнее, чем:
public class MyControllerAspect{
private static final ThreadLocal<MyPojo> pojo = new ThreadLocal<MyPojo>() {
public MyPojo initialValue(){
return new MyPojo();
}
}
@Around("controllers()")
public void doFilterInternal(HttpServletRequest request, HttpServletResponse servletResponse,
try {
//inject mypojo and do stuff
}finally{
pojo.remove(); //clean resources
}
Кажется, это почти то же самое, что уже сделал бы Spring. Мне кажется, я просто заново изобретаю колесо, может ли это быть? Или этот последний код действительно более эффективен?