欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 前端技术 > javascript >内容正文

javascript

jsp九大内置对象和四大作用域_JSP学习3

发布时间:2025/3/21 javascript 62 豆豆
生活随笔 收集整理的这篇文章主要介绍了 jsp九大内置对象和四大作用域_JSP学习3 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

JSP

注意: srcmain 下除了放java文件夹和resources文件夹, 不建议放其他文件夹.

其他文件夹建议放在web/statics下, 包括img, css, js, plugins等等

9大内置对象

  • PageContext (存东西)
  • Request (存东西)
  • Response
  • Session (存东西)
  • Application (ServletContext) (用来存东西)
  • config (ServletConfig)
  • out
  • page (基本不用了解)
  • exception

pageContextDemo01.jsp

<%--Created by IntelliJ IDEA.User: asusDate: 2020/6/9Time: 23:20To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head><title>Title</title> </head> <body> <%--内置对象--%> <%pageContext.setAttribute("name1", "num1"); //保存的数据只在一个页面中有效request.setAttribute("name2", "num2"); //保存的数据只在一次请求中有效, 请求转发会携带这个数据session.setAttribute("name3", "num3"); //保存的数据只在一次会话中有效, 从打开浏览器到关闭浏览器有效application.setAttribute("name4", "num4"); //保存的数据只在服务器中有效, 从打开服务器到关闭服务器有效%> <%--脚本片段中的代码, 会被原封不动生成到JSP.java 要求: 这里面的代码, 必须保证Java语法的正确性--%><% // 从pageContext取出, 我们通过寻找的方式来 // 从底层到高层(作用域)String name1 = (String)pageContext.getAttribute("name1");String name2 = (String)pageContext.getAttribute("name2");String name3 = (String)pageContext.getAttribute("name3");String name4 = (String)pageContext.getAttribute("name4");String name5 = (String)pageContext.getAttribute("name5"); //不存在// pageContext.forward("pageDemo02.jsp"); // 加入上述语句后pageDemo02.jsp运行结果将多出num2一行.%><%--使用EL表达式输出--%><h1>取出的值为:</h1> <h3>${name1}</h3> <h3>${name2}</h3> <h3>${name3}</h3> <h3>${name4}</h3> <h3>${name5}</h3> <h3><%=name5%>></h3> </body> </html>

最终的显示结果:

num1

num2

num3

num4

null

pageDemo02.jsp

<%--Created by IntelliJ IDEA.User: asusDate: 2020/6/9Time: 23:56To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head><title>Title</title> </head> <body> <% // 从pageContext取出, 我们通过寻找的方式来 // 从底层到高层(作用域)String name1 = (String)pageContext.getAttribute("name1");String name2 = (String)pageContext.getAttribute("name2");String name3 = (String)pageContext.getAttribute("name3");String name4 = (String)pageContext.getAttribute("name4");String name5 = (String)pageContext.getAttribute("name5"); //不存在%><%--使用EL表达式输出--%><h1>取出的值为:</h1> <h3>${name1}</h3> <h3>${name2}</h3> <h3>${name3}</h3> <h3>${name4}</h3> <h3><%=name5%>></h3> </body> </html>

最终的显示结果:

num3

num4

null

寻找过程:

Page->Request->Session->Application->null

JVM: 双亲委派机制类似

request: 客户端向服务器发送请求, 产生的数据, 用户看完就没用了, 比如: 新闻, 用户看完没用的

session: 客户端向服务器发送请求, 产生的数据, 用户用完一会儿还有用, 比如: 购物车;

application: 客户端向服务器发送请求, 产生的数据, 一个用户用完了, 其他用户还可能使用, 比如: 聊天数据;

总结

以上是生活随笔为你收集整理的jsp九大内置对象和四大作用域_JSP学习3的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。