본문 바로가기

   
Programming/ASP

Application 객체, Session 객체

반응형

Application 객체

Application 객체는 서버에 저장되는 공용 변수라고 생각하면 쉬울것 같다.



 컬렉션

설명 

 Contents

Application 객체 정보 저장 

 StaticObjects

<object> 태그로 작성된 Applicatio 객체 정보 저장 



 메소드

설명 

 Contents.Remove

Application 객체 Contents 컬렉션 항목 삭제 

 Contents.RemoveAll

Application 객체 Contents 컬렉션 모든 항목 삭제 

 Lock

Application 다른 사용자가 임의로 수정 못하도록 설정 

 UnLock

Application 다른 사용자가 객체를 수정 가능 하도록 설정




 이벤트

설명 

 Application_Onstart

서버 시작시 실행되는 이벤트 

 Application_OnEnd

서버 종료시 실행되는 이벤트 


다음 예제를 통해서 Application란 무엇인지 확인해보자.


Exam.asp

<meta content="text/html; charset=utf-8" http-equiv="content-type" />

<%

    '만약 총카운트가 비어있는 상태라면 접속 카운트는 0

    if Application("totalCounter") = "" then

        Application("totalCounter") = 0

    else

        Application("totalCounter") = Application("totalCounter") + 1

    end if

   

    Response.Write Application("totalCounter") & "번째 방문"

%>

 

결과


새로고침을 누르면 방문 횟수가 1씩 증가한다.


1. Contents 컬렉션

Application 객체는 컬렉션을 사용하여 접근 가능


Exam.asp

<meta content="text/html; charset=utf-8" http-equiv="content-type" />

<% @CODEPAGE="65001" language="VBScript" %>

<%

    Application("webtoon") = "노블레스"

    Application("movie") = "인셉션"

    Application("book") = "프로그래밍이 쉬웠어요"

    Application("phone") = "Iphone"

 

    for each list in Application.Contents

        Response.Write list & " : " & Application.Contents(list) & "<br>"

    next

%>

 

결과






2. Contents.Remove 메소드, Contents.RemoveAll 메소드

삭제하고싶은 Application 선언한 객체를 하나를 삭제하거나, 여태까지 사용한 모든 Application 객체를 삭제 한다.


Exam.asp

<meta content="text/html; charset=utf-8" http-equiv="content-type" />

<% @CODEPAGE="65001" language="VBScript" %>

<%

    Application("webtoon") = "노블레스"

    Application("movie") = "인셉션"

    Application("book") = "프로그래밍이 쉬웠어요"

    Application("phone") = "Iphone"

 

    '선언한 Application 하나를 book 삭제한다. 이것만 실행하면 지정한 것만 삭제되고 출력됨

    Application.Contents.Remove("book")

 

    '아래 항목을 주석을 제거할경우 모든것이 삭제되어 보여진다.

    'Application.Contents.RemoveAll()

 

    for each list in Application.Contents

        Response.Write list & " : " & Application.Contents(list) & "<br>"

    next

%>

 

결과






3. Lock, UnLock 메소드

모든 홈페이지에 들어오는 사용자가 같은 변수를 사용하기 때문에 사이트에 들어오는 모든 사람들마다 구분이 필요한 일이 있을 것이다.

문제가 생길 여부가 있는 페이지에 Lock과 UnLock을 사용하여 페이지를 관리 할수 있다.

<%

    'Lock 메소드 선언

    Application.Lock

 

    'Lock 메소드 해제

    Application.UnLock

%>

 

4. Session 객체

session 객체는 개인의 정보를 보관한다. 웹페이지에 접속하는 모든 사용자의 개개인 정보를 저장하는 역활을 한다고 보면된다.


 컬렉션

설명 

 Contents

Sessiont 객체 정보 저장 

 StaticObjects

<object>태그로 작성된 session 객체 정보 저장 



 메소드

설명 

 Abandon

 Session 객체 삭제 후 리소스 해제 

 Contents.Remove

 Session 객체중 Contents 컬렉션 지정한 항목 삭제 

 Contents.RemoveAll

 위와 같지만 전체 컬렉션 삭제 



 속성

설명 

 codePage

 사용 코드 페이지 결정 

 LCID

 사용 위치 식별자 결정 

 SessionID

 Session ID  결과를 준다.

 Timeout

 Session 유지를 얼마나 할지 




 이벤트

설명 

 Session OnStart

 첫 웹페이지 호출시 실행

 Session_OnEnd

 Session 종료시, 클라이언트 호출이 없을때 실행 



반응형