ThreadLocal é preferível a HttpServletRequest.setAttribute (“key”, “value”)?

A especificação do servlet (veja minha pergunta anterior) garante que o mesmo thread irá executar todos os Filtros e o Servlet associado. Dado isso, não vejo nenhum uso para passar dados usandoHttpServletRequest.setAttribute se houver a opção de usar umThreadLocal (supondo que você limpar corretamente). Eu sinto que há dois benefícios em usarThreadLocal: segurança de tipos e melhor desempenho porque nenhuma chave de cadeia ou mapas estão sendo usados ​​(exceto provavelmente em uma coleção de encadeamentos por id de encadeamento (não-string)).

Alguém poderia confirmar se estou certo para que eu possa prosseguir com o abandonosetAttribute?

questionAnswers(4)

yourAnswerToTheQuestion