ServletContext의 한계점 - 웹 어플리케이션 하나당 하나의 공통된 저장공간만 할당받는다.
만약 사용자별로 다른 데이터를 저장/사용하려면 사용할수 있는 방법이
세션공간을 활용하는것이다.
@WebServlet("/Cal_Sess")
public class Cal_Sess extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
PrintWriter out = resp.getWriter();
String v_ = req.getParameter("v");
String op = req.getParameter("operator");
HttpSession sess = req.getSession();
int v = 0;
if(!v_.equals(""))
v = Integer.parseInt(v_);
if (op.equals("=")) {
int x = (Integer)sess.getAttribute("value");
int y = v;
String operator = (String)sess.getAttribute("op");
int result = switch (operator) {
case "+" -> x + y;
case "-" -> x - y;
case "x" -> x * y;
default -> x / y;
};
out.println("result is "+result);
} else {
sess.setAttribute("value", v);
sess.setAttribute("op", op);
resp.sendRedirect("/Session.jsp");
}
}
}
|
cs |
ServletContext객체 대신 HttpSession객체를 만들어주는것만 제외하면 사용법은
달라진것이 없다.
하지만 사용자마다 고유의 SID를 할당받아 각각 다른 저장소를 사용하게 된다.
'Servlet&JSP' 카테고리의 다른 글
MVC model 개념 (0) | 2021.12.17 |
---|---|
Servlet의 상태값 유지하기3 - Cookie (0) | 2021.12.14 |
Servlet의 상태값 유지하기1 - Application Scope (0) | 2021.12.13 |
간단한 Servlet 예제 구현 (0) | 2021.12.07 |
intelliJ에서 Servlet 기본세팅 (0) | 2021.12.05 |