자바 자바학원 java java학원 scjp scjp학원 자바자격증 java자격증 scjp자격증 jsp ejb 자바프로그래밍 웹프로그래밍

[자바/JAVA]

간단한 사용예

 //세션의 변수 생성

  session.setAttribute("session_id",id); 
  session.setAttribute("session_pass",pass);

  //void invalidate() 해당 세션을 종료시킨다.
  session.invalidate();

***session객체의 메소드들

session

session객체는 page지시자의 session속성이  true(기본값)로 설정되어 있어야 사용가능하다.

1) 주요메소드       

String getId() 해당 세션의 세션 ID를 가져온다.
long getCreationTime() 세션이 생성된 시간을 가져온다.
logn getLastAccessedTime() 클라이언트에 의해 마지막으로 처리된 세션의 시간을 반환한다.
void setMaxInactiveInterval(time) 세션을 유지할 시간을 초단위로 설정한다.
int getMaxInactiveInterval() 세션의 유지 시간을 가져온다. 기본값(1800초)
boolean isNew() 클라이언트 세션ID를 할당하지 않은 경우 true값을 반환한다.
void invalidate() 해당 세션을 종료시킨다.
void setAttribute("세션변수명",값) 세션변수를 생성한다.
Object getAttribute("세션변수명") 저정된 세션변수명의 값을 가져온다. 가져올때는 반드시 해당 값의 성격에 따라 케스팅해야 한다.
----------------- 
SessionAuth.java
-----------------


/* 간단한 세션인증 예제 입니다. */
   import java.io.*;
   import javax.servlet.*;
   import javax.servlet.http.*;
   import myclasses.*;
   public final class SessionAuth extends HttpServlet
   {
     protected void doGet(HttpServletRequest req, HttpServletResponse res)
               throws ServletException, IOException     {
      sendPage(req, res, req.getSession(false));
     }

    protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
       Hangul hangul = new Hangul();
//login button을 누른경우
      if(req.getParameter("login") != null)   {
         HttpSession session = req.getSession(true);
          String name = hangul.han(req.getParameter("name"));
          //이름이 비어있는경우 Anonymous로 Setting
        if(name == null || name.length()==0) name = "Anonymous";
//Session에 name을 Binding
        session.putValue("name", name);
        sendPage(req, res, session);
      }
  //LogOut을 누른경우
      else  {
        HttpSession session = req.getSession(false);
        if(session != null) session.invalidate();
        sendPage(req, res, null);
      }
    }

    //session이 생성된경우와 생성되지 않은 경우 다르게 html구성 Method
    private void sendPage(HttpServletRequest req, HttpServletResponse res, HttpSession session)
            throws ServletException, IOException {
       res.setContentType("text/html;charset=euc-kr");
      res.setHeader("pragma", "no-cache");
      PrintWriter o = res.getWriter();
      o.print("");
      if(session == null)
        o.print("                        

<FORM method="post">                              Please enter your name: "+
                "<INPUT name="\">"+
                "<INPUT type="submit" value="\" name="\">"+
                "                         </FORM>                      ");
      else
        o.print("Hi " + session.getValue("name") +
        "                       

<FORM method="post">                              <INPUT type="submit" value="쿼리 전송" name=\>                         </FORM>                      ");
      o.close();
    }
}

              

출처 http://cafe.naver.com/edcxswqaz

                   

 

추천학원

자바 자바학원 java java학원 scjp scjp학원 자바자격증 java자격증 scjp자격증 jsp ejb 자바프로그래밍 웹프로그래밍

Posted by genesmer
,