java session中一般放哪些东西?session实例详解

TheDisguiser 2020-06-30 21:15:41 java常见问答 6532

我们都知道,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不限制存放数据,是因业务而异的。

以上就是本篇文章的所有内容了,你知道了吗?还需了解更多编程常见问题及答案的话,就请持续关注本网站吧。

推荐阅读:

session过期时间是多少?如何查看session是否过期?

如何获取session?方法有哪些?

session共享如何实现?实现的方法都有哪些?