입니다 사용하지 않는 것을 어떻게 할까? 그 세션은 JSP로 요청과 같은 implicite 읽었지만, 실제로 그것을 사용하는 방법을 모르겠다.JSP 세션 내 문제는 서블릿
URL에 몇 가지 변수를 전달하는 기본 페이지가 있습니다 (예 : index.jsp? id = 1).
도움 주셔서 감사합니다.
입니다 사용하지 않는 것을 어떻게 할까? 그 세션은 JSP로 요청과 같은 implicite 읽었지만, 실제로 그것을 사용하는 방법을 모르겠다.JSP 세션 내 문제는 서블릿
URL에 몇 가지 변수를 전달하는 기본 페이지가 있습니다 (예 : index.jsp? id = 1).
도움 주셔서 감사합니다.
을 사용할 수 있습니다
및 위해 index.jsp를? 세션의 속성을 얻을 수 있습니다 당신 JSTL<c:set>
및 <c:remove>
을 사용하여 세션 속성을 관리 할 수 있습니다. 효과적으로 session.removeAttribute("foo")
않습니다
<c:set var="foo" value="bar" scope="session" />
을 다음과 같은 :
효과적으로 session.setAttribute("foo", "bar")
않습니다 다음 물론
<c:remove var="foo" scope="session" />
, 당신은 할 수 액세스하는 속성의 일반적인 EL 방법을 사용하여 다음과 같은 인쇄 session.getAttribute("foo")
. 구체적인 문제에
${foo}
관련없는, 당신은 서블릿에 대한 당신의 혐오에 작동합니다. 이것은 좋은 습관이 아닙니다. JSTL은 비지니스 로직을 만드는 데 필요한 모든 것을 제공하지 못하기 때문에 기존의 스크립틀릿으로 되 돌린다.. 나는 그것이 단지 무지라고 생각한다. How to avoid Java code in JSP files?
당신이 JSP 코드에서 이것을 사용할 필요가
<%
HttpSession sess = request.getSession();
if (sess==null)
{
RequestDispatcher dispatcher = request.getRequestDispatcher("/login.jsp");
dispatcher.forward(request, response);
}
%>
당신은 ID = 1 당신이
request.getParameter("id")
는 두 개의 JSP
index.jsp를 = 얻을 매개 변수가 가정 : https://stackoverflow.com/tags/servlets/info는 또한이 대답은 다소 계몽 수 있습니다 : 조심스럽게 쉽게 생성하고 사용할 수있는 방법을 알아 우리의 서블릿 위키 페이지를 참조
<%
String empId = request.getParameter("id");
session.setAttribute("empId", empId);
response.sendRedirect("homePage.jsp");
0 index.jsp를 세션에 추가 값 (내장 객체)의
현재 홈페이지에 있습니다.JSP = 쓰기 코드는 이전에 키 EMPID
<%
String employeId = (String)session.getAttribute("empId");
%>
답변 해 주셔서 감사합니다.하지만 단일 JSP 페이지에서만 작업하고 싶습니다. – abierto
귀하의 의견을 고맙게 생각하지만, 주요 문제는 내가 만든 것이 아닌 뭔가를 만들고 있다는 것입니다. 즉,이 "엉망"을 발견했기 때문에 나는 그것을 가지고 갱신 할 충분한 시간이 없다고 생각합니다. 올바른 코드. 내가 그 링크들을 읽었을 때, 당신은 정말로 옳았습니다, 어쨌든 고맙습니다. – abierto