if(pageNow!=pageCount)
pw.println(\下一页\ //在servlet中显示图片
pw.println(\ pw.println(\ }
catch (Exception ex){ ex.printStackTrace(); } }
public void doPost(HttpServletRequest req,HttpServletResponse res){ this.doGet(req,res); } }
第一次登陆后cookie中就存有用户名和密码信息,点了两周内不重复登陆就可以直接登陆welcome界面了,不会因为不合法而被阻止登陆。
Session用于防止直接用welcome登陆,cookie在客户端存信息,让你可以直接登welcome 在此我整理一下之前写得所有内容:
Welcome Login LoginCl Html写出登陆界面, 包括密码,用户名, 提交按钮,两周内 不在重复登陆的选 则。 信息提交 接受密码用户名,与数据库内相比较,保存session,cookie(选中) 合法跳转welcome,不合法跳转回Login 先判断是否有session,若没有,查询其cookie,若有cookie,将cookie内容送LoginCl去比较用户密码是否正确,若,没有cookie,则跳回Login。 删除cookie
import javax.servlet.http.*; import java.io.*;
public class Cookie3 extends HttpServlet{
public void doGet(HttpServletRequest req,HttpServletResponse res){ try {
res.setContentType(\ PrintWriter pw=res.getWriter();
Cookie[] allCookies=req.getCookies(); int i=0;
if(allCookies!=null) {
for(i=0;i temp.setMaxAge(0); //为正数表示cookie保存时间,为0表示删除cookie,为负数 表示不保存cookie pw.println(\ break; } } } else { pw.println(\ } } catch (Exception ex) { ex.printStackTrace(); } } } 九、网站框架 1号线:将rs中的每条记录,封装成一个UserBean对象ub 2号线:将封装成一个UserBean对象ub放入arrayList集合中 3号线:从ArrayList取出ub来使用 Login /** * @(#)Login.java * * * @author * @version 1.00 2017/2/10 */ //登陆界面 package com.tsinghua; import javax.servlet.http.*; import java.io.*; public class Login extends HttpServlet{ //处理get请求 public void doGet(HttpServletRequest req,HttpServletResponse res){ //业务逻辑 try { //中文乱码解决方法 res.setContentType(\ PrintWriter pw = res.getWriter(); //返回登陆界面 pw.println(\ pw.println(\ pw.println(\登陆界面\ pw.println(\ pw.println(\用户名: pw.println(\两周内不在重新登录 catch (Exception ex){ ex.printStackTrace(); } } public void doPost(HttpServletRequest req,HttpServletResponse res){ this.doGet(req,res); } } LoginCl /** * @(#)Login.java * * * @author * @version 1.00 2017/2/10 */ //验证(登陆处理) package com.tsinghua; import javax.servlet.http.*; import java.io.*; import java.sql.*; public class LoginCl extends HttpServlet{ //处理get请求 public void doGet(HttpServletRequest req,HttpServletResponse res){ //业务逻辑 Connection ct=null; PreparedStatement ps=null; ResultSet rs=null; try { //接受用户名和密码 String u=req.getParameter(\ String p=req.getParameter(\ //调用userBeanCl UserBeanCl ubc=new UserBeanCl(); if(ubc.checkUser(u,p)){ //合法 String keep=req.getParameter(\ if(keep!=null){ //将用户名和密码保存在客户端(cookie) //创建cookie Cookie name=new Cookie(\ Cookie pass=new Cookie(\ //设置时间 name.setMaxAge(14*24*3600); pass.setMaxAge(14*24*3600); //回写到客户端 res.addCookie(name); res.addCookie(pass); } //将验证成功的信息,写入session //1表示得到session HttpSession hs=req.getSession(true); //修改session 的存在时间,设为20秒 hs.setMaxInactiveInterval(20); //把信息放session hs.setAttribute(\ //跳转(welcome) res.sendRedirect(\ }else{ //说明用户不存在 //跳转 res.sendRedirect(\ } } catch (Exception ex){ ex.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); } if(ps!=null){ ps.close(); } if(ct!=null){ ct.close(); } } catch(Exception ex){ ex.printStackTrace(); } } } public void doPost(HttpServletRequest req,HttpServletResponse res){ this.doGet(req,res); } } Welcome
\ pw.println(\密码:
\
\ pw.println(\ pw.println(\ pw.println(\ pw.println(\ }