當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
jsp九大内置对象和四大作用域_JSP学习3
生活随笔
收集整理的這篇文章主要介紹了
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的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: arcgis中python坡度计算_Ar
- 下一篇: bpmn js 生成json_你不知道的