English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JSP 클릭 횟수 통계

때때로 우리는 특정 페이지가 얼마나 많이 방문되는지 알아야 할 때가 있습니다. 이 경우, 페이지에 페이지 통계기를 추가해야 하며, 일반적으로 사용자가 페이지를 처음으로 로드할 때 페이지 방문 횟수를 누적합니다.

카운터를 구현하려면, 응용 프로그램 은닉 객체와 getAttribute() 및 setAttribute() 메서드를 사용하여 구현할 수 있습니다.

이 객체는 JSP 페이지의 전체 생명주기를 나타냅니다. JSP 페이지가 초기화될 때 이 객체가 생성되고, JSP 페이지가 jspDestroy()를 호출할 때 이 객체가 제거됩니다.

응용 프로그램에서 변수를 생성하는 문법은 다음과 같습니다:

application.setAttribute(String Key, Object Value);

위의 방법을 사용하여 카운터 변수를 설정하고 그 값을 업데이트할 수 있습니다. 변수를 읽는 방법은 다음과 같습니다:

application.getAttribute(String Key);

페이지가 방문될 때마다, 당신은 카운터의 현재 값을 읽고 증가시킬 수 있습니다1그런 다음 다시 설정하면, 다음 사용자가 페이지를 방문할 때 새로운 값이 페이지에 표시됩니다.

예제 설명

이 예제는 JSP를 사용하여 특정 페이지의 총 방문자 수를 계산하는 방법을 설명합니다. 만약 당신의 웹사이트에서 사용하는 페이지의 총 클릭 횟수를 계산하려면, 이 코드를 모든 JSP 페이지에 넣어야 합니다.

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<html>
<html>
<head>
<title> 방문 횟수 통계</title>
</head>
<body>
<%
    Integer hitsCount = 
      (Integer)application.getAttribute("hitCounter");
    if( hitsCount ==null || hitsCount == 0 ){
       /* 처음 방문 */
       out.println("문자열을 출력하십시오.);
       hitsCount = 1;
    } else {
       /* 방문 횟수 반환 */
       out.println("다시 방문을 환영합니다!");
       hitsCount += 1;
    }
    application.setAttribute("hitCounter", hitsCount);
%>
<p> 페이지 방문 횟수: <%= hitsCount%></p>
</body>
</html>

이제 위의 코드를 main.jsp 파일에 배치하고 접속합니다http://localhost:8080/testjsp/main.jsp파일. 페이지가 생성되면, 페이지를 갱신할 때마다 카운터가 변화합니다 (각 번호 갱신)1)。

다른 브라우저로 접속하면, 카운터가 방문 후에마다 증가합니다1예를 들어:

카운터 재설정

위의 방법을 사용하여 웹 서버가 재시작된 후, 카운터가 0으로 재설정되며, 이전에 보존된 데이터는 모두 사라집니다. 이 문제를 해결할 수 있는 몇 가지 방법을 사용할 수 있습니다:

  • 데이터베이스에서 페이지 방문 횟수를 통계를 위해 사용할 데이터 테이블 count를 정의합니다. 필드는 hitcount로, 기본 값은 0입니다. 통계 데이터를 데이터 테이블에 기록합니다.

  • 매번 방문 시 hitcount 필드를 읽습니다.

  • 매번 방문 시 hitcount가 증가합니다. 1。

  • 새로운 hitcount 값을 페이지 방문 횟수로 페이지에 표시합니다.

  • 만약 각 페이지의 방문 횟수를 통계를 취하고 싶다면, 이 상위 로직을 모든 페이지에 추가할 수 있습니다.