av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

IDEA 當(dāng)前在線人數(shù)和歷史訪問量的示例代碼

瀏覽:3日期:2024-08-21 09:10:44

當(dāng)前在線人數(shù)

IDEA 當(dāng)前在線人數(shù)和歷史訪問量的示例代碼

一共需要三處

創(chuàng)建監(jiān)聽器

package com.count;import javax.servlet.ServletContext;import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;import javax.servlet.annotation.WebListener;/* 初始化: 只有服務(wù)器的啟動(dòng),才會(huì)創(chuàng)建servletContext對(duì)象。 用于監(jiān)聽servletContext創(chuàng)建,一旦創(chuàng)建servletContext創(chuàng)建,則設(shè)置servletContext中的count值為0;*/@WebListener/* 這個(gè)注解的作用是啟動(dòng)監(jiān)聽,相當(dāng)于在web.xml配置( <listener> <listener-class>com.cyl.count.InitServletContexListener</listener-class> </listener>*/public class InitServletContexListener implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent servletContextEvent) { //獲取ServletContext域?qū)ο? ServletContext servletContext = servletContextEvent.getServletContext(); //給ServletContext域?qū)ο螅O(shè)置count=0 servletContext.setAttribute('count',0); } @Override public void contextDestroyed(ServletContextEvent servletContextEvent) { }}

package com.count; import javax.servlet.ServletContext;import javax.servlet.annotation.WebListener;import javax.servlet.http.HttpSession;import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener; /** * @監(jiān)聽在線人數(shù),監(jiān)聽session的創(chuàng)建和銷毀 * 如果session創(chuàng)建 獲取ServletContext中的count++,重新設(shè)置 * 如果session銷毀 獲取ServletContext中的count--,重新設(shè)置 */@WebListenerpublic class OnlineNumberHttpSessionListener implements HttpSessionListener { @Override public void sessionCreated(HttpSessionEvent httpSessionEvent) { //1.獲取session HttpSession session = httpSessionEvent.getSession(); ServletContext servletContext = session.getServletContext(); //2.獲取counnt值,加1 int count = (int) servletContext.getAttribute('count'); count++; //3.把servlet存儲(chǔ)到servletContext對(duì)象中 servletContext.setAttribute('count',count); } @Override public void sessionDestroyed(HttpSessionEvent httpSessionEvent) { //1.獲取session HttpSession session = httpSessionEvent.getSession(); ServletContext servletContext = session.getServletContext(); //2.獲取counnt值,減1 int count = (int) servletContext.getAttribute('count'); count++; //3.把servlet存儲(chǔ)到servletContext對(duì)象中 servletContext.setAttribute('count',count); }}

修改index.jsp

<%@ page contentType='text/html;charset=UTF-8' language='java' %><%@taglib prefix='c' uri='http://java.sun.com/jstl/core' %><html><head> <title>$Title$</title></head><body><h1>當(dāng)前在線人數(shù):${count}</h1></body></html>

歷史訪問量

IDEA 當(dāng)前在線人數(shù)和歷史訪問量的示例代碼

import java.io.IOException;import java.io.PrintWriter; import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class countServlet1 */@WebServlet('/countServlet1')public class countServlet1 extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public countServlet1() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //設(shè)置字符編碼 request.setCharacterEncoding('utf-8'); response.setCharacterEncoding('utf-8'); response.setContentType('text/html; charset=utf-8'); //獲取全局的共享數(shù)據(jù) ServletContext servletContext = this.getServletContext(); //獲取計(jì)數(shù)器count Integer count = (Integer) servletContext.getAttribute('count'); //如果獲取的計(jì)算器對(duì)象為空 ,說明是第一次訪問,并將count,放入servletCount if( servletContext.getAttribute('count') == null) { count = 1; servletContext.setAttribute('count', count); }else { //否則就不是第一次訪問,將登陸的計(jì)數(shù)器進(jìn)行加1的數(shù)據(jù)更新 servletContext.setAttribute('count', count+1); } //將登陸的次數(shù)顯示在頁面上 PrintWriter out =response.getWriter(); out.print('<!DOCTYPE html>rn' + '<html>rn' + '<head>rn' + '<meta charset='UTF-8'>rn' + '<title>登陸網(wǎng)頁次數(shù)統(tǒng)計(jì)</title>rn' + '</head>rn' + '<body>'); out.print('<h1>'); out.print('您是第 '+ servletContext.getAttribute('count')+'位訪客'); out.print('<h1>'); out.print('</body>rn' + '</html>'); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }

<%@ page contentType='text/html;charset=UTF-8' language='java' %><html> <head> <title>$Title$</title> </head> <body> <% //統(tǒng)計(jì)網(wǎng)頁訪問量 if (application.getAttribute('count') == null) { application.setAttribute('count', 0);//application.setAttribute('count', new Integer(0)); } Integer count = (Integer) application.getAttribute('count'); //使用application對(duì)象讀取count參數(shù)的值,再在原值基礎(chǔ)上累加1 application.setAttribute('count', count + 1);//application.setAttribute('count', new Integer(count.intValue() + 1)); %> <h2> <!-- 輸出累加后的count參數(shù)對(duì)應(yīng)的值 --> 歡迎您訪問,本頁面已經(jīng)被訪問過 <font color='#ff0000'><%=application.getAttribute('count')%></font>次 </h2> </body></html>

總結(jié)

到此這篇關(guān)于IDEA :當(dāng)前在線人數(shù)和歷史訪問量的文章就介紹到這了,更多相關(guān)IDEA :當(dāng)前在線人數(shù)和歷史訪問量內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: IDEA
相關(guān)文章:
主站蜘蛛池模板: 成人亚洲视频 | 看羞羞视频免费 | 久久只有精品 | 色黄视频在线 | 精品国产一区二区国模嫣然 | 欧美综合在线观看 | 久久久久一区二区 | 精品久久免费 | 超碰在线亚洲 | 国产精品一区二区三区在线 | 天天躁人人躁人人躁狂躁 | 国产亚洲高清视频 | 91免费在线 | 国产精品日韩欧美一区二区三区 | 亚洲综合五月天婷婷 | 蜜桃av一区二区三区 | 一区二区三区欧美 | 草久久久 | 9191av| 亚洲欧美激情视频 | 亚洲日本欧美日韩高观看 | 毛片久久久 | 日韩精品在线免费观看视频 | 亚洲一二三在线 | 国产午夜视频 | 中文字幕乱码一区二区三区 | 毛片久久久 | 亚洲天堂精品久久 | 国产精品久久久亚洲 | 国产一二三区精品视频 | 羞羞的视频免费观看 | 午夜欧美日韩 | 久久一级免费视频 | 免费观看一级特黄欧美大片 | 国产精品99久久久久久动医院 | 99成人 | 在线免费观看黄色 | 亚洲欧美另类在线观看 | 色婷婷综合久久久中字幕精品久久 | 九九在线视频 | 一区二区在线 |