一.基本登錄功能的實現
從網頁獲得用戶的名稱及密碼后,連接數據庫進行比對,即可實現登錄功能.為了讓程序的可讀性更好,這里采取將用戶的基本信息都封裝進UserBean.java,在UserBeanCk.java中對數據庫進行操作,LoginCk.java中判斷結果.
二.Session功能的實現
servlet中已經有關于session的一些函數,只需調用即可.
HttpSession hs=req.getSession(true);
hs.setMaxInactiveInterval(50);
hs.setAttribute("pass","ok");
String s=hs.getAttribute("pass");
getSession(true)函數為獲得session的操作權限,setMaxInactiveInterval()函數為設置session失效的最大時間間隔,這里的間隔不是累計時間,而是距離最近一次刷新的時間.setAttribute()函數可以添加一些參數,比如保存用戶名之類的,第一個參數是屬性的名稱,第二個參數是值.getAttribute()函數則可以根據屬性的名稱取出相應的值.
三.Cookie功能的實現
//將用戶名和密碼保存在客戶端,cookie技術
Cookie name=new Cookie("myname",u);
Cookie pass=new Cookie("mypasswd",p);
//設置時間,單位為秒
name.setMaxAge(60);
pass.setMaxAge(60);
//回寫到客戶端
res.addCookie(name);
res.addCookie(pass);
四.ServletContext功能的實現(可以實現網站訪問次數統計功能)
//登錄成功,網站訪問次數加1
if(this.getServletContext().getAttribute("visitTimes")!=null){
int times=Integer.parseInt(this.getServletContext().getAttribute("visitTimes").toString())+1;
this.getServletContext().setAttribute("visitTimes",times+"");
}else{
try{
System.out.println("init...");
//將文件中保存的訪問次數保存到ServletContext
//創建一個FileReader
FileReader fr=new FileReader("D:/JavaEE/Apache Software Foundation/Tomcat 8.5/webapps/myWebSites/myCounter.txt");
BufferedReader br=new BufferedReader(fr);
//讀出一行數據
String numVal=br.readLine();
//關閉文件流
br.close();
//從文件中獲取訪問次數times
int times=Integer.parseInt(numVal);
//將visitTimes屬性的值設為times,為了將times轉為String類型,所以在后面加一個空白的字串
this.getServletContext().setAttribute("visitTimes",times+"");
}catch(Exception ex){
ex.printStackTrace();
}
}