(1)首先看一下项目的结构

是在tomcat--webaps下的myWebSites项目

在myWebSites下有仅仅有WEB-INF目录 在WEB-INF目录中有  一下目录(在classes目录下方class类)

当中之需下边三个 类就可以 项目例如以下结构:

(2)Login.java代码

//登陆界面
package com.tsinghua;import javax.servlet.http.*;import java.io.*;public class Login extends HttpServlet{public void doGet(HttpServletRequest req,HttpServletResponse res){//业务逻辑try{//解决中文乱码res.setContentType("text/html;charset=gbk");PrintWriter pw = res.getWriter();//返回登陆界面pw.println("<html>");pw.println("<body>");            pw.println("<h1>用户登录</h1>");pw.println("<form action=logincl method=post>");  //action的是servlet的urlpw.println("用户名:<input type=text name=username><br/>");pw.println("密码:<input type=password name=passwd><br/>");pw.println("<input type=submit value=loing><br/>");pw.println("<input type=hidden name=sex value=男><br/>");  //hidden类型在页面中不显示pw.println("</form>");           pw.println("</body>");pw.println("</html>");}catch(Exception ex){ex.printStackTrace();}}public void doPost(HttpServletRequest req,HttpServletResponse res){this.doGet(req,res);}
}

(3)Logincl.java代码

//登陆界面
package com.tsinghua;import javax.servlet.http.*;import java.io.*;public class Logincl extends HttpServlet{public void doGet(HttpServletRequest req,HttpServletResponse res){//业务逻辑try{//解决中文乱码//res.setContentType("text/html;charset=gbk");    //PrintWriter pw = res.getWriter();//接受用户名和passwordString u = req.getParameter("username");String p = req.getParameter("passwd");//验证if(u.equals("sp") && p.equals("123")){//将验证成功的信息,写入到session中去//1.得到sessionHttpSession hs = req.getSession(true);//改动session的存在时间hs.setMaxInactiveInterval(20000);// 以秒算的hs.setAttribute("pass","ok");  //设置到session中去//合法的情况 跳转到Welcomeres.sendRedirect("welcome?uname="+u+"&upass="+p);//这里跳转的仍是servlet的url}else{//不合法的情况//跳转res.sendRedirect("login");//跳转的是要到servlet的url}}catch(Exception ex){ex.printStackTrace();}}public void doPost(HttpServletRequest req,HttpServletResponse res){this.doGet(req,res);}
}

(4)Welcome.java代码

//登陆界面
package com.tsinghua;import javax.servlet.http.*;import java.io.*;public class Welcome extends HttpServlet{public void doGet(HttpServletRequest req,HttpServletResponse res){//得到sessionHttpSession hs = req.getSession(true);String val = (String)hs.getAttribute("pass");//推断if(val == null){try{//非法登陆res.sendRedirect("login");}catch(Exception ex){ex.printStackTrace();}}//得到Logincl传递的 usernameString u=req.getParameter("uname");//得到passwordString p= req.getParameter("upass");String sex= req.getParameter("sex");println(sex);//业务逻辑try{//解决中文乱码res.setContentType("text/html;charset=gbk");PrintWriter pw = res.getWriter();pw.println("hello welcome!"+u+p);}catch(Exception ex){ex.printStackTrace();}}public void doPost(HttpServletRequest req,HttpServletResponse res){this.doGet(req,res);}
}

须要项目代码的:http://download.csdn.net/detail/u010870518/7843661

Servlet实现Session相关推荐

  1. Servlet 和Session的关系

    jsp的Session和Servlet的Session本质上是一致的,区别是:jsp中session是作为隐式对象存在的,可以直接使用:Servlet中的session需要手动提取后才能使用. Htt ...

  2. 高薪程序员面试题精讲系列73之你熟悉servlet、session吗?get与post有哪些区别?

    一. 面试题及剖析 1. 今日面试题 你熟悉servlet与session吗? servlet和JSP有什么关系? jsp有哪几个作用域?有几个内置对象? 说说session与servlet的生命周期 ...

  3. Servlet之session实践:session实现简易购物车

    文章目录 Servlet之session实践:session实现简易购物车 1 过程分析 1.1 Product类:存储商品信息 1.2 ShoppingItem类:存储购买条目信息 1.3 Shop ...

  4. 【Servlet】Session的特点和使用

    Session Session用来存储用户的不同请求的共享数据.作用范围:一次会话 Request 对象解决了一次请求内的不同Servlet 的数据共享问题,那么一个用户的不同请求的处理需要使用相同的 ...

  5. 【Servlet】Session会话跟踪技术

    Session Session是指使用HttpSession对象实现会话跟踪的技术,是一种在服务器端保持会话跟踪的解决方案. HttpSession对象是javax.servlet.http.Http ...

  6. 一步一步学习Servlet之Session使用

    同一用户不同请求之间的数据共享问题,用户第一次访问服务器,服务器会给此用户创建一个session对象存储在服务器中,并将该session对象的JSESSIONID使用Cookie技术存储到浏览器中,保 ...

  7. servlet,session对象的生命周期

    谈到javaweb首先想到的就是servlet,说道servlet就会想到servlet的生命周期 那么servlet到底是什么时候出生,什么时候死亡叻 说道他的生命周期 就绕不过servlet的三个 ...

  8. DW-CHEN的Java点滴记录JavaWeb之HTTP协议/Servlet/Cookie/Session/JSP/EL/JSTL/Filter/Listener

    JavaEE规范 JavaEE(Java Enterprise Edition):Java企业版,早期叫J2EE(J2EE的版本从1.0到1.4结束):现在Java版本从JavaEE 5开始 Java ...

  9. servlet设置session追踪模式

    为什么80%的码农都做不了架构师?>>>    import java.util.HashSet; import java.util.Set;import javax.servlet ...

最新文章

  1. Python 技术篇-python生成html源码功能实现演示,html代码自动生成技巧,列表生成式的灵活应用
  2. 【Python】选取二维列表的第一列
  3. 【论文导读】浅谈胶囊网络与动态路由算法
  4. 《陶哲轩实分析》部分勘误
  5. 如何合理的规划一次 JVM 性能调优
  6. Django复习:模型与管理网站
  7. 转:神奇的Fastcgi_Finish_Request
  8. (四)2005年我的第一次软件行业创业,烧掉30万、2年时间打水漂的惨痛教训
  9. JavaScript(3):JS和Html
  10. oracle:plsql学习总结(oracle database 10g sql 开发指南)
  11. 多个相机间的对齐之为什么需要对齐,对齐有什么好处?
  12. 一、项目分析(华为项目管理法-孙科炎读书摘要)
  13. mysql经典脚本_mysql常用脚本
  14. redis获取哈希类型的值,hget、hmget、hgetall
  15. win7怎样修改文件后缀名
  16. 计算机网络期末复习资料(一)单选题
  17. 强大的全文本搜索工具——AnyTXT Searcher
  18. 基于java码头船只出行及配套货柜码放管理系统(含源文件)
  19. 小程序setdata优化_关于小程序setData的写法,如何减少setData次数?优化程序性能...
  20. motorola铃声算法,是Java的!(转)

热门文章

  1. 扬尘监测系统_工地扬尘监测_工地扬尘监测解决方案
  2. Spring-Mybatis MapperScannerConfigurer 取不到PropertyPlaceholderConfigurer里的值
  3. Spring+SpringMVC+MyBatis深入学习及搭建(二)——MyBatis原始Dao开发和mapper代理开发
  4. Java_关于App class loader的总结
  5. 首席信息安全官的未来将何去何从?
  6. [转] Bookmarklet(书签工具)编写指南
  7. Outlook通过RPC/RPC Over HTTPS访问Exchange邮箱
  8. [电子商务网站设计] 之 My Space
  9. 青光眼-复内路粘小管成形术(ABiC)-转载
  10. Every column needs a corresponding expression. No expression found for xxxx