JSP內置對象,動作,指令總結

總的來說關于JSP界面有九大內置對象,7大動作,三大指令,現在博主就將這些粘貼出來,此文是很久前整理的學習筆記,如有雷同請諒解!

jsp九大內置對象:
1>out?向客戶端輸出數據,字節流.如out.print("?dgaweyr");
?
2>request?接收客戶端的http請求.
String?getParameter(String?name):得到表單參數名name的值.
String[]?getParameterValues(String?name):(得到String[]復選框時常用).
setAttribute(String?name,Object?obj):設置屬性名為name,屬性值為obj.
getAttribute(String?name);得到屬性值.
?
3>response:封裝jsp產生的回應,然后發送到客戶端以響應客戶的請求.重定向跳轉任意界面.(服務器跳轉)
addCookie(Cookie?cookie):
sendRedirect("/wel.jsp"):跳轉到指定頁面
?
4>session:用于保存用戶信息,跟蹤用戶行為,當前打開的瀏覽器內,多個頁面共享數據.?session對象指的是客戶端與服務器的一次會話,從客戶連到服務器的一個WebApplication開始,直到客戶端與服務器斷開連接為止.它是HttpSession類的實例.
setAttribute(String?name,Object?obj):設置屬性名為name,屬性值為obj.
getAttribute(String?name):得到屬性值.
?
5>application對象:實現了用戶間數據的共享,可存放全局變量.它開始于服務器的啟動,直到服務器的關閉,在此期間,此對象將一直存在;這樣在用戶的前后連接或不同用戶之間的連接中,可以對此對象的同一屬性進行操作;在任何地方對此對象屬性的操作,都將影響到其他用戶對此的訪問.服務器的啟動和關閉決定了application對象的生命.它是ServletContext類的實例.
?
session,application,request的區別:
一個項目中session盡量少用幾個,因為過多的session會影響程序的執行效率.它主要用于保存登錄信息(用戶信息,權限,資源)即頻繁使用的信息.
application:?用于多個瀏覽器之間共享數據,多個用戶共享該對象,可以做計數器.它的用法與session完全一樣.
數據范圍:
application(服務器關閉時失效)>session(瀏覽器關閉時失效)>request(只能用于兩個跳轉頁面之間)
?
6>page對象代表jsp這個實體本身,即當前頁面有效.相當于Java中的this.
數據范圍:page<session<application
?
7>.exception:代表運行時的異常.
在會發生異常的頁面加入指令:<%@?page?errorPage="處理錯誤的頁面.jsp"%>
在處理異常的頁面寫入:<%@?page?isErrorPage="true"%>
?
8>.pageContext對象?pageContext對象提供了對JSP頁面內所有的對象及名字空間的訪問,也就是說他可以訪問到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當于頁面中所有功能的集大成者,它的本類名也叫pageContext.
?
9>.config?jsp對應的servlet的配置,可以得到web.xml中的初使化參數.
?
jsp七大動作:
一:include?動態包含(分別編譯):
用jsp:include動作實現<jsp:?include?page="included.jsp"?flush="true"?/>
它總是會檢查所含文件中的變化,適合用于包含動態頁面,并且可以帶參數。flush屬性:?用true?,表示頁面可刷新。默認為false;
?
二:useBean動作(jsp頁面使用javaBean的第二種方式):
<jsp:useBean?id="對象名"?class="包名.類名"?scope="作用范圍(request/page/application/session)"/>
作用域默認為page(本頁面有效).
三:getProperty動作(name為useBean動作中的id).
從對象中取出屬性值:<jsp:getProperty?name="javaBean對象"?property="javaBean對象屬性名"?/>
四:setProperty動作(name為useBean動作中的id):
為對象設置屬性值:<jsp:setProperty?name="javaBean對象"?property="javaBean對象屬性名"?value=http://www.hake.cc/kf/201109/"值"/>
為對象設置屬性值:<jsp:setProperty?property="javaBean對象屬性名"?name="javaBean對象"?param="username"/>
(param="username"?相當于?value=http://www.hake.cc/kf/201109/<%=request.getParameter("username")%>)
?
五:param動作(傳遞參數)):
到達跳轉頁面可以通過?request.getParameter(“參數名”)方式取出參數值
<jsp:include?page="轉向頁面的url"?>
???????????<jsp:param???name="參數名1"?value=http://www.hake.cc/kf/201109/"參數值1">
?
<jsp:param???name="參數名2"?value=http://www.hake.cc/kf/201109/"參數值2">
???????????...........
?</jsp:include>
或:
<jsp:forward?page="轉向頁面的url"?>
???????????<jsp:param???name="參數名1"?value=http://www.hake.cc/kf/201109/"參數值1">
???????????<jsp:param???name="參數名2"?value=http://www.hake.cc/kf/201109/"參數值2">
???????????...........
</jsp:forward>
?
六:forward動作:
跳轉頁面:<jsp:forward?page="login.jsp"?/>
?
七:plugin動作:<jsp:plugin>:用于指定在客戶端運行的插件
?
JSP三大指令之:
一:page指令:
1.指定頁面編碼.例:
<%@?page?language="java"?contentType="text/html;charset=gbk"?pageEncoding="gbk"?%>
2.導入包,例:
<%@?page?import="java.util.*,java.text.*"?%>.
二:include?指令
靜態包含(統一編譯):<%@?include?file="included.jsp"%>
?
三:taglib
?
三.Jsp中的靜態包含與動態包含
動態include(<jsp:?include?page="included.jsp"/>)
靜態include(<%@?include?file="included.jsp"%>)
1.?靜態include的結果是把其他jsp引入當前jsp,兩者合為一體,可以達到數據的共享即可以說是統一編譯的,而
動態include的結構是兩者獨立的,直到輸出時才合并即為分別編譯的.
2.動態include的jsp文件獨立性很強,是一個單獨的jsp文件,需要使用的對象,頁面設置,都由自己創建,而靜態include純粹是把代碼寫在外面的一種共享方法,所有的變量都是可以和include它的主文件共享,兩者高度緊密結合,不能?有變量同名的沖突.而頁面設置也可以借用主文件的.
3.動態包含總是檢查被包含頁面的變化,靜態包含不一定檢查被包含頁面的變化.
4.動態包含可帶參數,靜態包含不能帶參數.如(<jsp:?include?page="included.jsp">放入參數</jsp:include>);

轉載于:https://www.cnblogs.com/Itbin/p/6935368.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/370494.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/370494.shtml
英文地址,請注明出處:http://en.pswp.cn/news/370494.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

洛谷 P1795 無窮的序列_NOI導刊2010提高(05)

P1795 無窮的序列_NOI導刊2010提高&#xff08;05&#xff09; 題目描述 有一個無窮序列如下&#xff1a; 110100100010000100000… 請你找出這個無窮序列中指定位置上的數字 輸入輸出格式 輸入格式&#xff1a;第一行一個正整數N&#xff0c;表示詢問次數&#xff1b; 接下來的…

java 取字符串中的數字_java截取字符串中的數字

隨便給你一個含有數字的字符串&#xff0c;比如&#xff1a;String s"eert343dfg56756dtry66fggg89dfgf";那我們如何把其中的數字提取出來呢&#xff1f;大致有以下幾種方法&#xff0c;正則表達式&#xff0c;集合類&#xff0c;還有就是String類提供的方法。1 Stri…

番石榴的對象類:Equals,HashCode和ToString

如果您有幸使用JDK 7 &#xff0c;那么新的可用Objects類 &#xff08; 至少對我來說 &#xff09;是實現“通用” Java對象方法&#xff08;例如equals&#xff08;Object&#xff09; [with Objects.equals&#xff08;Object&#xff0c;Object &#xff09; ]&#xff0c; …

此服務器的時鐘與主域控制器的時鐘不一致_中移動“超高精度時間同步服務器”開標,兩家中標...

8月25日&#xff0c;中國移動發布《2020年至2022年同步網設備集中采購_中標候選人公示》公告。兩家中標。同步網技術比較小眾&#xff0c;但是同步網是5G承載網的重要一環&#xff0c;分享一下&#xff0c;供大家參考。中標情況 標包1-時鐘同步設備中標候選人依次排序為&#x…

java 異常管理員_GitHub - kangZan/JCatch: Exception異常管理平臺,支持Java、PHP、Python等多種語言...

什么是JCatch當程序發生異常(Exception)&#xff0c;處理方式一般是通過日志文件記錄下來&#xff0c;這種方式很容易被忽略&#xff0c;而且查詢起來比較麻煩。JCatch提供了一種方案&#xff0c;當程序發生異常時&#xff0c;通過JCatch平臺接口提交到JCatch平臺&#xff0c;由…

oled

gnd、vcc、clk、miso、rst、mosi、cs 轉載于:https://www.cnblogs.com/scrazy/p/7892733.html

使用html css js實現計算器

使用html css js實現計算器&#xff0c;開啟你的計算之旅吧 效果圖&#xff1a; 代碼如下&#xff0c;復制即可使用&#xff1a; <!DOCTYPE html><html lang"en"> <head> <meta charset"utf-8"> <style> /* 主體 */ .co…

面向對象的三個基本特征

面向對象的三個基本特征是&#xff1a;封裝、繼承、多態。封裝 封裝最好理解了。封裝是面向對象的特征之一&#xff0c;是對象和類概念的主要特性。封裝&#xff0c;也就是把客觀事物封裝成抽象的類&#xff0c;并且類可以把自己的數據和方法只讓可信的類或者對象操作&#xff…

Spring構造函數注入和參數名稱

在運行時&#xff0c;除非在啟用了調試選項的情況下編譯類&#xff0c;否則Java類不會保留構造函數或方法參數的名稱。 這對于Spring構造函數注入有一些有趣的含義。 考慮以下簡單的類 package dbg; public class Person {private final String first;private final String …

java學習文檔_資深程序員帶你深入了解JAVA知識點,實戰篇,PDF文檔

JAVA 集合JAVA 集合面對浩瀚的網絡學習資源&#xff0c;您是否為很難找到適合自己的學習資源而感到苦惱過&#xff1f;那么&#xff0c;您來對地方了。在這里我們幫助大家整理了一份適于輕松學習 Java 文章的清單。JVM文字太多&#xff0c;不便之處敬請諒解JAVA 集合文字太多&a…

java程序員電影_Java程序員必看電影:Java 4-ever

(Scene: A father and his son playing "throw-and-catch")(場景: 一位父親和兒子玩丟接球游戲)Narrator: They appear to be a perfect family旁白: 他們看起來像是一個完美的家庭(Scene: bedtime story)(場景: 床邊故事)Father: Export all OLE objects with the c…

深入理解softmax函數

Softmax回歸模型&#xff0c;該模型是logistic回歸模型在多分類問題上的推廣&#xff0c;在多分類問題中&#xff0c;類標簽 可以取兩個以上的值。Softmax模型可以用來給不同的對象分配概率。即使在之后&#xff0c;我們訓練更加精細的模型時&#xff0c;最后一步也需要用soft…

《第二章:深入了解超文本》

從本章開始要去除無用的話&#xff0c;只在筆記中記載要點----- 使用<a>元素創建一個超文本鏈接&#xff0c;鏈接到另一個Web頁面。 <a>元素的內容會成為Web頁面中可單擊的文本。 href屬性告訴瀏覽器鏈接的目標文件。 了解屬性 例&#xff1a;style的type屬性指定…

strcpy函數_錯誤更正(拷貝賦值函數的正確使用姿勢)

這是一篇對什么是C的The Rule of Three的錯誤更正和詳細說明。閱讀時間7分鐘。難度???雖然上一篇文章的閱讀量只有凄慘的兩位數&#xff0c;但是懷著對小伙伴負責的目的&#xff0c;必須保證代碼的正確性。這是大廚做技術自媒體的態度。前文最后一段代碼是這樣的&#xff1a…

將Java應用程序打包為一個(或胖)JAR

這篇文章的目標是一個有趣但非常強大的概念&#xff1a;將應用程序打包為單個可運行的JAR文件&#xff0c;也稱為一個或胖 JAR文件。 我們習慣了大型WAR歸檔文件&#xff0c;其中包含所有打包在某些公用文件夾結構下的依賴項。 使用類似于JAR的打包&#xff0c;情況有所不同&a…

學習java的第三天,猜字符的小程序

關于猜字符的小程序 主要實現&#xff1a;隨機輸出5個字母&#xff0c;用戶輸入猜測的字母&#xff0c;進行對比得出結果 主要有3個方法&#xff1a;主方法main(); 產生隨機字符的方法generate(); 比較用戶輸入的字符與隨機產生的字符的方法check&#xff08;&#xff09;&…

《Linux命令行與shell腳本編程大全 第3版》創建實用的腳本---10

以下為閱讀《Linux命令行與shell腳本編程大全 第3版》的讀書筆記&#xff0c;為了方便記錄&#xff0c;特地與書的內容保持同步&#xff0c;特意做成一節一次隨筆&#xff0c;特記錄如下&#xff1a;轉載于:https://www.cnblogs.com/guochaoxxl/p/7894995.html

python安裝包找不到setup_如何安裝沒有setup.py的Python模塊?

在系統上開始使用該代碼的最簡單的方法是&#xff1a;>將文件放入機器上的目錄中,>將該目錄的路徑添加到您的PYTHONPATH步驟2可以從Python REPL完成如下&#xff1a;import syssys.path.append("/home/username/google_search")您的文件系統的外觀示例&#xf…

Spring Batch中面向TaskletStep的處理

許多企業應用程序需要批處理才能每天處理數十億筆交易。 必須處理這些大事務集&#xff0c;而不會出現性能問題。 Spring Batch是一個輕量級且強大的批處理框架&#xff0c;用于處理這些大數據集。 Spring Batch提供了“面向TaskletStep”和“面向塊”的處理風格。 在本文中&a…

布局中常見的居中問題

說到布局除了浮動以及定位外還有一個不得不提的點&#xff0c;那就是居中&#xff0c;居中問題我們在網頁布局當中經常遇到&#xff0c;那么以下就是分為兩部分來講&#xff0c;一部分是傳統的居中&#xff0c;另一種則是flex居中&#xff0c;每個部分又通過分為水平垂直居中來…