zoukankan      html  css  js  c++  java
  • JAVA后台 关于如何从后台传递信息在jsp前端页面显示

    JAVA后台 关于如何从后台传递信息在jsp前端页面显示

    首先,博主今天为了将后台的信息传递到前台,废了不少的脑筋,一开始,博主采用了request.setAttribute()的方法,来实现的,具体代码如下:

    在servlet中,写上:
    request.setAttribute(“name”, loginUser.getAccount());//这里的意思可以理解为将loginUser.getAccount()的值放入名为“name”的容器里

    在jsp页面中,写上:
    欢迎您,${name}//意思是将name中的数据显示出来,也就是后台传递的内容。

    结果截图:
    这里写图片描述

    哈哈哈,博主一看,信息传过去了,内心窃喜,搞定!!!

    然而,当博主为了万(wan)全(quan)起(shou)见(jian),刷新了一下页面,发现,从后台传递到jsp的值不见了!!!卧槽,博主内心一阵mmp。
    这是怎么回事???
    当博主重新打开网页,重新输入信息,值又回来了,但一刷新页面,值又不见了。因此,博主猜想可能是因为request.setAttribute()的生命周期是不是太短了,导致不能一直显示下去。

    所以当博主把后台代码改成:
    request.getSession().setAttribute(“name”, loginUser.getAccount());

    重新运行了程序,正常显示,刷新,正常显示,因此,问题解决!

    这里说一下关于request.getsession().setAttribute()request.setAttribute的区别 :
    request.getSession().setAttribute(“name”,loginUser.getAccount())把,loginUser.getAccount()返回值保存到session当前会话中,名称为name,只要当前会话不过期,任何地方都可以访问到; request.setAttribute(“name”,loginUser.getAccount())把,loginUser.getAccount()的返回值保存到request当前请求中,名称为name,只在当前请求中访问到,其他请求中无法访问
    request.setAttribute这个的生命周期就是request级别的
    request.getSession().setAttribute这个的生命周期是session级别的

    因此,如果小伙伴们是为了传递短时间的信息,如:用户登录界面中的信息报错,可以用声明周期较短的request.setAttribute
    而为了使信息可以保存更久的时候,则应该用request.getSession().setAttribute

    谢谢大佬们观看,如有不同观点或更好的观点,请及时提出,小弟虚心请教。

    摘抄自:https://blog.csdn.net/Atimynyc/article/details/78386601?locationNum=2&fps=1

  • 相关阅读:
    Xor 2020CCPC网络赛 数位DP
    D. Cleaning 前缀后缀
    Sum of Log ICPC上海区域赛 数位dp 双线程
    Sky Garden icpc上海站 2020
    Gitignore 2020 上海icpc区域赛
    单片机常用调试的接口有哪些
    基于单片机和温度传感器实现专用测温系统的设计
    大神带你如何正确认识它
    linux的top命令详解
    基于S3C44B0XARM7处理器的嵌入式统扩展USB接口的技术方案
  • 原文地址:https://www.cnblogs.com/xiaodongxiaodong/p/9285343.html
Copyright © 2011-2022 走看看