jsp笔记一
jsp的頁面元素
腳本
通常,修改web.xml、配置文件、java 需要重啟tomcat服務
如果是修改 jsp\html\css\js,不需要重啟
注釋
- html注釋
- java注釋 // /.../
- jsp注釋 <%-- --%>
jsp指令
<@page %> 定義頁面的依賴屬性,如腳本語言,error頁面,緩存需求等 <@include %> 包含其他文件 <%taglib %> 引入標簽庫的定義,可以是自定義標簽page指定的屬性
jsp行為
JSP行為標簽使用XML語法結構來控制servlet引擎。它能夠動態插入一個文件,重用JavaBean組件,引導用戶去另一個頁面,為Java插件產生相關的HTML等等。
行為標簽只有一種語法格式,它嚴格遵守XML標準:
| jsp:include | 用于當前頁面中包含靜態或動態資源 |
| jsp:userBean | 尋找和初始化一個javaBean組件 |
| jsp:setProperty | 設置JavaBean組件的值 |
| jsp:getProperty | 將JavaBean組件的值插入到output中 |
| jsp:forward | 從一個jsp文件向另一個文件傳遞一個包含用戶請求的request對象 |
| jsp:plugin | 用于在生成的HTML頁面中包含Apple和JavaBean對象 |
| jsp:element | 動態創建一個XML元素 |
| jsp:attribute | 定義動態創建的XML元素的屬性 |
| jsp:body | 定義動態創建的XML元素的主體 |
| jsp:text | 用于封裝模板數據 |
jsp隱含對象
JSP支持九個自動定義的變量,江湖人稱隱含對象。
| request | 請求對象 |
| response | |
| out | 向客戶端輸出內容 |
| session | |
| application | |
| config | |
| pageContext | |
| page | |
| Exception | Exception類的對象,代表發生錯誤的JSP頁面的對應的異常對象 |
session對象
| setAttribute(String key,Object value) | void | 一鍵值對的形式保存對象值 |
| getAttribute(String key) | Object | 通過鍵獲取對象值 |
| getID() | String | 獲取sessionId |
| invalidate() | void | 設置session對象失效 |
| setMaxInactiveInter | void | 設置session的有效期 |
| removeAttribute(String key) | void | 移除session中的屬性 |
Cookie 與 Session的比較
- Session 是在服務端保存用戶信息,Cookie是在客戶端保存用戶信息。
- Session 中保存的是對象,Cookie中保存的是字符串
- Session 對象隨會話結束而失效,Cookie則可以長期保存在客戶端
- Cookie 通常用于保存不重要的用戶信息,重要的信息使用session保存
創建Cookie對象
Cookie cookieName=new Cookie(String key,String value);寫入Cookie
Response.addCookie(cookieName)
讀取Cookie
Cookie[] cookies=request.getCookies();
getCookies() 返回一個Cookie對象組(JSON格式,類似于字典)
getName() -> 獲取鍵(key)
getValue() -> 獲取值(Value)
所以取值時需要遍歷數組
在讀取Cookie時,為了避免空指針異常,在循環Cookie數組時先對數組進行非空判斷
關鍵代碼
| setValue(String value) | void | 創建Cookie后,為Cookie賦值 |
| getName() | String | 獲取Cookie的名稱 |
| getValue() | String | 獲取Cookie的值 |
| getMaxAge() | int | 獲取Cookie的有效期,以秒為單位 |
| setMaxAge(int expiry) | void | 設置Cookie..... |
Tip
通常情況下expiry參數應為大于0的整數,表示Cookie的有效時間。
如果設置expiry參數為0,表示刪除Cookie
設置expiry參數為-1或不設置,表示Cookie會在當前窗口關閉后失效
application 內置對象與全局作用域
application對象常用方法(setAttribute(),getAttribute)
page作用域與 pageContext 對象
page作用域的數據只能在本頁面中訪問
,在該作用域內可以使用pageContext對象的setAttribute()和
getAttribute()方法來訪問該類型作用域數據
不同作用域的對比
| page作用域 | 只在當前頁面有效,一旦離開當前頁面,則該范圍內創建的對象將無法訪問 |
| request作用域 | 在同一個請求范圍內可以訪問該范圍內創建的對象,一旦請求失效,則創建的對象也失效 |
| session作用域 | 在會話沒有失效或者銷毀前,都可以訪問該范圍內的對象 |
| application作用域 | 在整個web應用服務沒有停止前,都可以從application中進行數據的存取 |
轉載于:https://www.cnblogs.com/duoban/p/11536441.html
總結
- 上一篇: 如何利用System.Net.Mail类
- 下一篇: IIS AppCreate子目录的错误(