Я выполняю некоторый проект на основе аутентификации с использованием сервлета/jsp. Когда пользователь вступает в систему с использованием имени пользователя и пароля, где аутентификация происходит через сервлет регистрации, мне нужно сохранить электронную почту пользователя в переменной, скажем String email
, выполнив запрос SELECT
. Мне нужно получить доступ к этой переменной из сервлета регистрации в сервлет электронной почты для отправки своего рода OTP в электронную почту пользователя. Как достичь этого с помощью атрибута сеанса или любой соответствующей идеи?Как использовать значение переменной во время сеанса в servlet/jsp?
0
A
ответ
1
1
используйте, пожалуйста, следующим образом. вы можете достичь того, что вам нужно.
<%session.setAttribute("email", "[email protected]");%>
<%= session.getAttribute("email") %>
Другой способ, который мы используем.
<c:set var="email" value="[email protected]" scope="session"/>
вы получите это с помощью JS:
var mail ="${email}";
1
Чтобы сохранить данные сеанса вы должны использовать объект сеанса из запроса HTTP, как это:
HttpSession session = request.getSession();
session.setAttribute("email", email);
Для извлечения данных из объекта сеанса с использование сценария:
<%= session.getAttribute("email")%>
или
<%= request.getSession().getAttribute("email")%>
Вы также можете использовать EL выражение:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:out value="${sessionScope.email}"/>
Возможный дубликат [Как установить атрибут сеанса в Java?] (Http://stackoverflow.com/questions/8292940/how- в настройке-сессия-атрибут-в-Java) – vanje