我想設計一個會員線上控管的程式 ( JSP )... |
尚未結案
|
csie
一般會員 發表:8 回覆:5 積分:2 註冊:2002-09-14 發送簡訊給我 |
|
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
請在httpsessionlistener 的 sessionDestroyed事件中,實作這些儲存動作.
參考:
http://forum.java.sun.com/thread.jspa?forumID=45&threadID=479734
http://www.javaworld.com.tw/jute/post/view?bid=6&id=77346&tpg=1&ppg=1&sty=1&age=0#77346
http://big5.ccidnet.com:89/gate/big5/tech.ccidnet.com/pub/article/c322_a180671_p1.html
|
csie
一般會員 發表:8 回覆:5 積分:2 註冊:2002-09-14 發送簡訊給我 |
非常感謝 neoart 您的幫忙!!!
我參考您的資料已可以觸發 sessionDestroyed ,但我想在 sessionDestroyed 後即將時間及資訊寫入 Database 會產生 ERROR ?? 是我寫錯了嗎?? 還是版主您還有範例或是參考資料,可提小弟我參考參考~~感激不盡!!
====================這是我寫的修改的 class====================
package test; import java.sql.*;
import java.lang.*;
import java.io.*;
import java.io.Serializable;
import javax.servlet.http.*;
import javax.servlet.http.HttpSessionActivationListener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener; public class HttpSessionCounter implements Serializable, HttpSessionListener, HttpSessionActivationListener {
private static int sessionCount;
private static String delAccount = null;
private static Connection conn = null;
private static Statement st = null;
public synchronized void sessionCreated (HttpSessionEvent se) {
se.getSession().setAttribute("listener", this);
sessionCount++;
}
public synchronized void sessionDestroyed (HttpSessionEvent se) {
sessionCount--;
/**
Class.forName("com.sybase.jdbc2.jdbc.SybDriver");
Connection conn = DriverManager.getConnection("jdbc:sybase:Tds:10.10.10.101:4100/test", "sa", "");
Statement st = conn.createStatement();
st.executeUpdate("UPDATE online_test SET online_count = 1 WHERE user_name ='" + delAccount + "'");
st.close();
conn.close();
**/
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn = DriverManager.getConnection("jdbc:odbc:DRIVER=Microsoft Access Driver (*.mdb);DBQ=C:/compiler/db1.mdb", "", "");
st = conn.createStatement();
st.executeUpdate("UPDATE online_test SET online_count = 1 WHERE user_name ='" + delAccount + "'");
st.close();
conn.close(); }
public synchronized void sessionDidActivate (HttpSessionEvent se) {
System.out.println("sessionDidActivate");
sessionCount++;
}
public synchronized void sessionWillPassivate (HttpSessionEvent se) {
System.out.println("sessionWillPassivate");
sessionCount--;
}
public static int getSessionCount(){
return sessionCount;
}
public static void setUserAccount (String name){
delAccount = name;
}
public static String getStatus(){
return delAccount;
}
}
==============================================================
引言: 請在httpsessionlistener 的 sessionDestroyed事件中,實作這些儲存動作. 參考: http://forum.java.sun.com/thread.jspa?forumID=45&threadID=479734 http://www.javaworld.com.tw/jute/post/view?bid=6&id=77346&tpg=1&ppg=1&sty=1&age=0#77346 http://big5.ccidnet.com:89/gate/big5/tech.ccidnet.com/pub/article/c322_a180671_p1.html |
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |