我们都知道,session也可以说是一个临时容器,专门用来存放一些临时数据,那么在java中我们一般会用session来存放什么呢?下面一起来看看吧。
现在,我们就用一个实例来详细了解一下吧
Session实现登录和注销
Index页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'index.jsp' starting page</title> </head> <body> <%=session.getAttribute("uname") %>好,这里是首页. <a href="logout.jsp">[退出]</a> <br> <a href="news.jsp">新闻</a> <a href="topic.jsp">标题</a> </body> </html>
Control页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% request.setCharacterEncoding("utf-8"); String uname = request.getParameter("uname"); String upwd = request.getParameter("upwd"); if(uname.equals("admin") && upwd.equals("admin")){ //把用户名保存在session中 //在整个浏览器范围内,都可以获取session中的用户名 session.setAttribute("uname", uname); response.sendRedirect("index.jsp"); }else{ out.println("<script>alert('登录失败');location.href='login.jsp';</script> "); } % >
Login页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'login.jsp' starting page</title> </head> <body> <form name="form1" method="post" action="control.jsp"> 用户名:<input type="text" name="uname"/><br /> 密 码:<input type="password" name="upwd"/><br /> <input type="submit" value="登录"/> <input type="reset" value="重置" /> </form> </body> </html>
Logout页面
< % @ page language = "java" import = "java.util.*" pageEncoding = "UTF-8" % > < % //清除session session.invalidate(); //回到登录页面 response.sendRedirect("login.jsp"); % >
News页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'news.jsp' starting page</title> </head> <body> <%=session.getAttribute("uname") %>好,这是新闻! <br> </body> </html>
Topic页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'topic.jsp' starting page</title> </head> <body> <%=session.getAttribute("uname") %>好,这是标题! <br> </body> </html>
我们看到,session其实是可以存放大部分数据的,在这里,我们存放是用户的登录信息。但如果是类似于淘宝的话,存放的就都是购物车及商品信息,session不限制存放数据,是因业务而异的。
以上就是本篇文章的所有内容了,你知道了吗?还需了解更多编程常见问题及答案的话,就请持续关注本网站吧。
推荐阅读: