Jsp&Servlet

Session 관련 메서드들

살구르 2017. 1. 24. 11:44

@WebServlet("/sessionTest1")

public class SessionTest1 extends HttpServlet{

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{

response.setContentType("text/html;charset=utf-8");

PrintWriter out = response.getWriter();

String param = request.getParameter("p");

String msg = null;

HttpSession session = null;

if(param.equals("create")){ // 세션 생성(getSession())

session = request.getSession();

if(session.isNew()){

msg="새로운 세션 생성";

}else{

msg="기존 세션 리턴";

}

}else if(param.equals("destory")){ // 세션 삭제(invalidate())

session=request.getSession(false);

if(session!=null){

session.invalidate();

msg="세션 삭제 완료";

}else{

msg="삭제할 세션 없음";

}

}else if(param.equals("add")){ // 세션에 데이터 등록

session = request.getSession();

session.setAttribute("str", "메시지입니다.");

msg="데이터 등록 완료!";

}else if(param.equals("get")){ // 세션 데이터 추출

session = request.getSession(false);

if(session!=null){

String s = (String)session.getAttribute("str");

msg="데이터 추출 완료 : "+s;

}else{

msg="현재 세션 존재하지 않음!";

}

}else if(param.equals("replace")){

session = request.getSession();

session.setAttribute("str", "대체된 메시지입니다.");

msg="데이터 등록 완료!";

}else if(param.equals("remove")){

session = request.getSession(false);

if(session!=null){

Object o  = session.getAttribute("str");

if(o!=null){

session.removeAttribute("str");

msg="데이터 삭제 완료!";

}else{

msg="해당 데이터가 등록되지 않음";

}

}else{

msg="데이터 삭제할 세션 존재하지 않음";

}

}

out.print("<h1>처리 결과 : "+msg+"</h1>");

out.close();

}

}