때로는 특정 페이지를 방문한 횟수를 알아야 하는 경우가 있습니다. 이 경우 페이지 방문 통계는 일반적으로 사용자가 처음으로 페이지를 로드할 때 누적됩니다.
카운터를 구현하려면 애플리케이션 암시적 개체와 관련 메서드인 getAttribute() 및 setAttribute()를 사용할 수 있습니다.
이 객체는 JSP 페이지의 전체 라이프사이클을 나타냅니다. 이 객체는 JSP 페이지가 초기화될 때 생성되고 JSP 페이지에서 jspDestroy()를 호출하면 삭제됩니다.
다음은 앱에서 변수를 생성하기 위한 구문입니다.
application.setAttribute(문자열 키, 개체 값);위의 방법을 사용하여 카운터 변수를 설정하고 변수 값을 업데이트할 수 있습니다. 이 변수를 읽는 방법은 다음과 같습니다.
application.getAttribute(문자열 키);페이지에 액세스할 때마다 카운터의 현재 값을 읽고 1씩 증가시킨 다음, 사용자가 다음에 액세스할 때 페이지에 새 값이 표시되도록 재설정할 수 있습니다.
이 예에서는 JSP를 사용하여 특정 페이지를 방문하는 총 사람 수를 계산하는 방법을 소개합니다. 웹 사이트에서 사용된 페이지의 총 클릭 수를 계산하려면 모든 JSP 페이지에 이 코드를 삽입해야 합니다.
<%@ page import="java.io.*,java.util.*" %><html><head><title>JSP의 애플리케이션 객체</title></head><body><% 정수 hitCount = (Integer)application.getAttribute("hitCounter"); if( HitsCount ==null || hitCount == 0 ){ /* 첫 번째 방문*/ out.println("내 웹사이트에 오신 것을 환영합니다!"); = 1; }else{ /* 액세스 값 반환*/ out.println("내 웹사이트에 다시 오신 것을 환영합니다!");itsCount += 1; } application.setAttribute("hitCounter",itsCount); p>총 방문수: <%= hitCount%></p></center></body></html>
이제 위 코드를 main.jsp 파일에 배치하고 http://localhost:8080/main.jsp 파일에 액세스합니다. 페이지가 카운터를 생성하고 페이지를 새로 고칠 때마다 카운터가 변경됩니다(새로 고칠 때마다 1씩 증가). 다양한 브라우저를 통해서도 액세스할 수 있으며, 방문할 때마다 카운터가 1씩 증가합니다. 아래와 같이:
내 웹사이트에 다시 오신 것을 환영합니다!총 방문 횟수: 12위의 방법을 사용하면 웹 서버가 다시 시작된 후 카운터가 0으로 재설정됩니다. 즉, 이전에 보유했던 데이터가 사라지게 됩니다. 다음 방법을 사용하여 이 문제를 해결할 수 있습니다.
웹 페이지 방문 횟수를 계산하기 위해 데이터베이스에 데이터 테이블 수를 정의합니다. 필드는 hitcount입니다. 기본값은 0입니다. 데이터 테이블에 통계 데이터를 씁니다.
각 액세스마다 테이블의 hitcount 필드를 읽습니다.
방문할 때마다 조회수가 1씩 증가하도록 하세요.
페이지의 새로운 hitcount 값을 페이지 조회수로 표시합니다.
각 페이지의 방문 횟수를 계산해야 하는 경우 위의 로직을 사용하여 모든 페이지에 코드를 추가할 수 있습니다.