Lorsque vous utilisez Spring, vous devez souvent obtenir une session et demander des objets dans des classes ordinaires.
Par exemple, certaines classes d'intercepteur AOP, lors de l'utilisation de struts2, car struts2 a une interface, vous pouvez facilement obtenir l'objet de session en utilisant org.apache.struts2.ServletActionContext.
Utilisation :
ServletActionContext.getRequest().getSession();
Dans les classes ordinaires des projets Java Spring traditionnels, comment obtenir une session et une demande ?
1. Ajoutez le code suivant à web.xml :
<listener> <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> </listener>
2 Vous pouvez directement injecter une session et une requête dans les classes ordinaires
@Autowired private HttpSession session; @Autowired private HttpServletRequest request;
De plus, dans After the Listener. dans la première étape, vous pouvez également utiliser du code pour obtenir l'objet reuqest :
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
Si vous êtes dans un projet Spring Boot et qu'il n'y a pas de web.xml, vous n'avez pas besoin d'enregistrer manuellement l'écouteur dans le première étape. Vous pouvez directement injecter la session et la demande dans les classes ordinaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!