¿Es ThreadLocal preferible a HttpServletRequest.setAttribute ("clave", "valor")?

La especificación del servlet (ver mi pregunta anterior) garantiza que el mismo hilo ejecutará todos los filtros y el servlet asociado. Dado esto, no veo ningún uso para pasar datos usandoHttpServletRequest.setAttribute Si existe la opción de usar unThreadLocal (Suponiendo que usted limpie adecuadamente). Siento que hay dos beneficios al usarThreadLocal: seguridad de tipos y mejor rendimiento porque no se utilizan claves de cadena o mapas (excepto probablemente en una colección de hilos por (sin cadena) ID de hilo).

¿Podría alguien confirmar si estoy en lo cierto para poder proceder con el abandono?setAttribute?