jsp验证成功在servlet中怎样设置session值返回给页面,页面怎样获得session

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp验证成功在servlet中怎样设置session值返回给页面,页面怎样获得session相关的知识,希望对你有一定的参考价值。

参考技术A 1.在servlet中获取到session,使用session.setAttribute("userInfo",userInfo);
2.在每个页面可以使用<%%>取到session.getAttribute("userInfo")或者使用EL表达式$sessionScope.userInfo;都可以取到你存放的值。
注:userInfo比如是当前用户登录的信息的javabean对象。
参考技术B servlet中:
HttpServletRequest request的一个引用作为servlet的service或get或poset方法的参数,你可以使用它。
request.getSession().setAttribute("user",userObj);

jsp中:
<%
User u = (User)session.getAttribute("user");
%>
参考技术C javascript是不能访问Session的。比如你要用JavaScript判断是否登录了,那么可以把“是否登录”这个信息在Servlet中保存到一个Cookies中,然后在页面上用JavaScript来判断Cookies中这个信息是否存在就能判断登陆了。因为JavaScript是可以访问Cookies的。
另外,团IDC网上有许多产品团购,便宜有口碑
参考技术D 传送页面 HttpSession hs=request.getSession(true);
hs.setAttribute("传送的名称",值)

接收页面 HttpSession hs=request.getSession(true);
String value=(String)hs.getSession("传送的名称");
第5个回答  2011-07-20 servlet中:request.getSession().setAttribute("xxx", xxx);
JSP中:直接通过EL表达式输出 $sessionScope.xxx本回答被提问者采纳

Servlet验证Mysql数据库,实现JSP页面数据动态显示

Servlet验证Mysql数据库,实现JSP页面数据动态显示

在此篇文章:《创建一个JavaWEB项目——Servlet验证MySQL数据库实现登录》的基础上进行改动,将html页面替换成jsp页面,并实现页面数据动态显示。

前提

  1. 已连接MySQL数据库
  • 数据库中有两个用户数据:Peter和Tom
  1. Tomcat服务器已配置成功
  2. 项目已搭建完成

改动

  1. 在项目根目录web下方新建jsp文件。
  • success.jsp:login.html页面中有登录表单,提交form表达之后,会请求/login,登录成功后会跳转至success.jsp页面。
    <jsp:useBean id="user" scope="request" type="main.User"/>
    <%--
      Created by IntelliJ IDEA.
      User: Elvira
      Date: 2020/11/13
      Time: 21:02
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@ page import="java.util.*" %>
    <%@ page import="main.User" %>
    <html>
    <head>
        <title>登录成功</title>
    </head>
    <body>
    <h1>登录成功!</h1>
    <%
        User theUser = (User)request.getAttribute("user");
        out.print("<h1>小脚本:当前登录用户为:"+theUser.getUsername()+"</h1>");
    %>
    <h1>EL表达式:当前登录用户为:$user.username</h1>
    
    </body>
    </html>
    
  1. 只需要在LoginServlet中添加两行代码即可
    //将数据存到request域 转发给success.jsp进行显示
    //存到域当中,存了user对象
    req.setAttribute("user", user);
    //转发
    req.getRequestDispatcher("/success.jsp").forward(req,resp);
    
  • 页面显示:
  1. 使用Peter登录,页面动态显示Peter用户名
  2. 使用Tom登录,页面动态显示Tom用户名

总结

完成上述就能实现数据在jsp页面上动态显示了。

以上是关于jsp验证成功在servlet中怎样设置session值返回给页面,页面怎样获得session的主要内容,如果未能解决你的问题,请参考以下文章

Servlet验证Mysql数据库,实现JSP页面数据动态显示

jsp+servlet怎样防止用户用URL直接访问页面

JSP中怎样用session保存并验证用户登录信息

java 在jsp中怎样获取servlet中的数据

在servlet中怎样获取jsp中下拉列表中的值

怎样验证jsp页面输入的用户名与密码和数据库中的一致?