久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      詳談Java設(shè)置session超時(shí)(失效)的時(shí)間

      詳談Java設(shè)置session超時(shí)(失效)的時(shí)間

      免費(fèi)學(xué)習(xí)推薦:java基礎(chǔ)教程

      在一般系統(tǒng)登錄后,都會(huì)設(shè)置一個(gè)當(dāng)前session失效的時(shí)間,以確保在用戶長(zhǎng)時(shí)間不與服務(wù)器交互,自動(dòng)退出登錄,銷毀session
      具體設(shè)置的方法有三種:
      1.在web容器中設(shè)置(以tomcat為例)
      在tomcat-7.0confweb.xml中設(shè)置,以下是tomcat7.0中默認(rèn)配置:

      <session-config>     <session-timeout>30</session-timeout> </session-config>

      tomcat默認(rèn)session超時(shí)時(shí)間為30分鐘,可以根據(jù)需要修改,負(fù)數(shù)或0為不限制session失效時(shí)間

      這里要注意這個(gè)session設(shè)置的時(shí)間是根據(jù)服務(wù)器來計(jì)算的,而不是客戶端。所以如果在調(diào)試程序,應(yīng)該是修改服務(wù)器端時(shí)間來測(cè)試,而不是客戶端

      2.在工程的web.xml中設(shè)置

      <!--時(shí)間單位為分鐘--> <session-config>     <session-timeout>15</session-timeout> </session-config>

      這里的15是指15分鐘失效

      3.通過java代碼設(shè)置

      session.setMaxInactiveInterval(30*60);//以秒為單位,即在沒有活動(dòng)30分鐘后,session將失效

      三種方式優(yōu)先等級(jí):1 < 2 < 3

      在一般系統(tǒng)中,也可能需要在session失效后做一些操作:
      1.控制用戶數(shù),當(dāng)session失效后,系統(tǒng)的用戶數(shù)減少一個(gè),控制用戶數(shù)量在一定范圍內(nèi),確保系統(tǒng)的性能
      2.控制一個(gè)用戶多次登錄,當(dāng)session有效時(shí),如果相同用戶登錄,就提示已經(jīng)登錄了,當(dāng)session失效后,就可以不同提示,直接登錄
      那么如何在session失效后,進(jìn)行一系列的操作呢?
      這里就需要用到監(jiān)聽器了,即當(dāng)session因?yàn)楦鞣N原因失效后,監(jiān)聽器就可以監(jiān)聽到,然后執(zhí)行監(jiān)聽器中定義好的程序就可以了
      監(jiān)聽器類為:HttpSessionListener類,有sessionCreated和sessionDestroyed兩個(gè)方法
      自己可以繼承這個(gè)類,然后分別實(shí)現(xiàn)
      sessionCreated指在session創(chuàng)建時(shí)執(zhí)行的方法
      sessionDestroyed指在session失效時(shí)執(zhí)行的方法
      例子:

      public class OnlineUserListener implements HttpSessionListener{     public void sessionCreated(HttpSessionEvent event){         HttpSession session=event.getSession;         String id=session.getId()+session.getCreationTime();         SummerConstant.UserMap.put(id,Boolean.TRUE);//添加用戶     }          public void sessionDestroyed(HttpSessionEvent event){         HttpSession session=event.getSession;         String id=session.getId()+session.getCreationTime();         synchronized(this){             SummerConstant.USERNum--;//用戶數(shù)減-             SummerConstant.UserMap.remove(id);//從用戶組中移除掉,用戶組為一個(gè)map         }     } }

      然后只需要把這個(gè)監(jiān)聽器在web.xml中聲明就可以了

      <listener>     <listener-class>com.demo.OnlineUserListener</listener-class> </listener>

      相關(guān)學(xué)習(xí)推薦:java基礎(chǔ)

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)