Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

JSP में हिट काउंटर कैसे लागू करें?

हिट काउंटर आपकी वेब साइट के किसी विशेष पेज पर विज़िट की संख्या के बारे में बताता है। आमतौर पर, आप अपने index.jsp पेज के साथ एक हिट काउंटर संलग्न करते हैं यह मानते हुए कि लोग पहले आपके होम पेज पर आते हैं।

इम्प्लीसिट Application ऑब्जेक्ट का उपयोग करके हिट काउंटर लागू करना

हिट काउंटर लागू करने के लिए आप Application इम्प्लीसिट ऑब्जेक्ट और संबंधित मेथड्स getAttribute() और setAttribute() का उपयोग कर सकते हैं।

यह ऑब्जेक्ट अपने संपूर्ण जीवनचक्र के माध्यम से JSP पेज का प्रतिनिधित्व करता है। यह ऑब्जेक्ट तब बनाया जाता है जब JSP पेज आरंभ होता है और jspDestroy() मेथड द्वारा JSP पेज हटाए जाने पर हटा दिया जाता है।

सिंटैक्स

एप्लिकेशन लेवल पर वेरिएबल सेट करने का सिंटैक्स:

application.setAttribute(String Key, Object Value);

आप उपरोक्त मेथड का उपयोग हिट काउंटर वेरिएबल सेट करने और उसी वेरिएबल को रीसेट करने के लिए कर सकते हैं। पिछले मेथड द्वारा सेट किए गए वेरिएबल को पढ़ने का मेथड:

application.getAttribute(String Key);

हर बार जब कोई उपयोगकर्ता आपके पेज को एक्सेस करता है, तो आप हिट काउंटर का वर्तमान मान पढ़ सकते हैं, इसे एक से बढ़ा सकते हैं, और भविष्य के उपयोग के लिए इसे फिर से सेट कर सकते हैं।

उदाहरण: main.jsp

<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
    <title>Application object in JSP</title>
</head>
<body>
    <%
        Integer hitsCount = (Integer) application.getAttribute("hitCounter");
        if (hitsCount == null || hitsCount == 0) {
            /* पहली विज़िट */
            out.println("Welcome to my website!");
            hitsCount = 1;
        } else {
            /* वापसी विज़िट */
            out.println("Welcome back to my website!");
            hitsCount += 1;
        }
        application.setAttribute("hitCounter", hitsCount);
    %>
    <center>
        <p>Total number of visits: <%= hitsCount %></p>
    </center>
</body>
</html>

परीक्षण

उपरोक्त कोड को main.jsp में रखें और इस JSP को URL https://localhost:8080/main.jsp का उपयोग करके कॉल करें। यह हिट काउंटर मान प्रदर्शित करेगा जो पेज रिफ्रेश करने पर बढ़ता है। आप अलग-अलग ब्राउज़र्स का उपयोग करके पेज एक्सेस करने का प्रयास कर सकते हैं और आप पाएंगे कि हिट काउंटर हर हिट के साथ बढ़ता रहेगा:

आउटपुट

Welcome back to my website!
Total number of visits: 12

सीमाएं

  • एप्लिकेशन पुनरारंभ पर रीसेट: सर्वर पुनरारंभ पर काउंट शून्य हो जाता है।
  • क्लस्टरिंग मुद्दे: एकाधिक सर्वर इंस्टेंस में प्रत्येक का अपना काउंटर होगा।
  • कोई उपयोगकर्ता अंतर नहीं: कुल हिट्स गिनता है, अद्वितीय विज़िटर्स नहीं।

उत्पादन के लिए समाधान

  • लगातार गणना के लिए डेटाबेस/Redis का उपयोग करें (पिछला लेख देखें)।
  • विस्तृत मीट्रिक्स के लिए एनालिटिक्स टूल्स (Google Analytics) के साथ एकीकृत करें।
  • अद्वितीय विज़िटर्स के लिए सत्र/कुकी-आधारित ट्रैकिंग पर विचार करें।
  1. JSP में कुकीज़ कैसे सेट करें? JSP में कुकीज़ कैसे सेट करें?

    JSP के साथ कुकीज़ सेट करने में तीन चरण शामिल हैं: चरण 1: Cookie ऑब्जेक्ट बनाना कुकी नाम और कुकी मान दोनों के साथ Cookie कंस्ट्रक्टर को कॉल करें, जो दोनों स्ट्रिंग्स हैं। Cookie cookie = new Cookie(key, value); ध्यान रखें, न तो नाम और न ही मान में व्हाइटस्पेस या निम्नलिखित कैरेक्टर्स होने चाहिए: [ ]

  1. - JSP में ऑटो रिफ्रेश कैसे लागू करें?

    JSP एक ऐसा तंत्र प्रदान करके इस काम को आसान बनाता है जहां आप एक वेबपेज को इस तरह बना सकते हैं कि यह दिए गए अंतराल के बाद स्वचालित रूप से रिफ्रेश हो जाए। वेबपेज को रिफ्रेश करने का सबसे सरल तरीका रिस्पॉन्स ऑब्जेक्ट के setIntHeader() मेथड का उपयोग करना है। इस मेथड का सिग्नेचर: public void setIntHeader

  1. - JSP में हिट काउंटर कैसे लागू करें ताकि एप्लिकेशन के प्रत्येक पुनरारंभ पर काउंट डेटा का नुकसान न हो?

    जब आप अपने एप्लिकेशन को पुनरारंभ करते हैं, यानी वेब सर्वर, यह आपके एप्लिकेशन वेरिएबल को रीसेट कर देगा और आपका हिट काउंटर शून्य पर रीसेट हो जाएगा। इस नुकसान से बचने के लिए, निम्नलिखित बिंदुओं पर विचार करें: डेटाबेस टेबल परिभाषित करें एकल काउंट के साथ, मान लें hitcount. इसे शून्य मान असाइन करें। प्र