• servlet范围:数据共享


    数据共享:
    
    请求转发:request.getDispatcher("相对路径").forward(request,response)
    
    重定向:response.sendRedirect("/项目名/路径名");
    
    request:一次请求的范围  ,过了这次请求所有数据失效
    request.setAttribute(name,value)
    request.getAttribute(name)
    请求转发时:session、getParameter都有值
    重定向时:session、getParameter都无值
    
    
    session:会话范围 :当前浏览器范围,只要不关闭浏览器 数据一直存在
    request.getsession().setAttribute(name,value)
    request.getsession().getAttribute(name)
    请求转发时:session、getParameter都有值
    重定向时:session有值、getParameter无值
    
    
    servletContext:整个应用范围:服务器范围,只要服务器不关闭,数据一致存在
    request.getsession().getServletContext().setAttribute(name,value)
    request.getsession().getServletContext().getAttribute(name)
    请求转发时:session、getParameter都有值
    重定向时:session有值、getParameter无值
    
    原则:能在request 就不要 放session 能在session  就不要在servletContext
    原因:服务器可能一跑跑几年,浏览器页面也可能玩一天才关闭,只有请求是一次性的
    
    注意:1、request.getAtribute()与request.getParameter()获得的值是不同的 request.getAtribute(name)获得是request.setAttribute(name,value)里的值,值可以任意改写 request.getParameter()是获得页面的值
    2、session范围:赋值粘贴传值后的打开的新窗口,而不是打开新的浏览器
  • 相关阅读:
    单链表
    css hack原理
    java类载入器——ClassLoader
    ImportTsv-HBase数据导入工具
    Android之键盘监听的执行机理【看清键盘监听的本质】【入门版】
    每天复习Shell—ls
    poj 1159 Palindrome
    redis-3.0.3安装測试
    PHP 对象和引用总结
    sas单变量的特征分析
  • 原文地址:https://www.cnblogs.com/1020182600HENG/p/6092926.html
Copyright © 2020-2023  润新知