Get it on Google Play

Acceso a los atributos de la petición en aplicaciones Spring

26-01-2016
 
Spring

Spring

Si estamos usando Spring como Framework para nuestras aplicaciones web Java, nos resultará útil saber como acceder a los atributos de las peticiones(Request). Spring nos aporta la classe ‘RequestContextHolder’ para acceder a los atributos de la siguiente manera:

@RequestMapping("/miurl")
public String miurl(Model model) { 
    	
    	RequestContextHolder.currentRequestAttributes().setAttribute( "miattributo", valoratributo, RequestAttributes.SCOPE_REQUEST );
    	
    	return "mipagina"; 
    	}
	

El código se explica por si mismo. Importante el tercer páramelo, que nos permite especificar si nuestro atributo tendrá alcance de la petición(SCOPE_REQUEST), alcance de sesión(SCOPE_SESSION) o a nivel de sesión global(SCOPE_GLOBAL_SESSION), es decir, que será visible por todos los usuarios de la web.

Si queremos leer el atributo desde otra classe de nuestra aplicación web lo haremos así:

RequestContextHolder.currentRequestAttributes().getAttribute( "miatributo", RequestAttributes.SCOPE_REQUEST )

Si queremos acceder a el desde, por ejemplo, desde una plantilla thymeleaf, JSF(JavaServer Faces) o JSP:

	<!-- Thymeleaf --> 
	<div th:text=”${miatributo}”/>

	<!-- JSF --> 
	<div>#{miatributo}</div>

	<!-- JSP --> 
	<div>${miatributo}</div>

Leave a Reply

© Albert Coronado Calzada