jsp的9大內置對象
jsp的原理
cookie的學習:
設置cookie
cookie域的設置:多個域名之間進行訪問時:path必須要配置爲 /
httpsession:(session保存在服務端,cookie保存在客戶端,一個用戶只能有一個session,cookie可以多個),application
httpsession底層依賴於cookie或url重寫,原因是:
當cookie中的JSESSIONID不存在,會去url中找參數有沒有一個參數:JSESSIONID= 值是對應的sessionid,所以底層依賴於cookie或url重寫
服務器不會立刻創建session,而是通過當第一次調用session時,纔會創建session:
jsp會自動的使用session,servlet需要調用了方法纔會創建session
當瀏覽器中的cookie被禁用了,我們可以在所有的超鏈接和url上添加一個參數:
我們重寫url太麻煩,所以我們response.encodeURL()的方法,會自動幫我們判斷如果cookie中沒有sessionid,會自動幫我們重寫的url
動態生成圖片驗證碼動態圖片生成:
驗證碼刷新:因爲我們是請求的是一個servlet,所以擔心瀏覽器緩存,所以我們請求是添加上 一個參數,請求的時間:
請求的servlet
生成圖片的verfifycode類
jsp的三大指令和九大內置對象
jsp的exception對象不是所有的頁面都可以用,只有當一個頁面配置isErrorPage時纔可以使用,然後我們可以這樣輸出錯誤信息
我們平時只需要配置:
include 靜態包含:
九大內置對象:
開發階段:tomcat的web.xml 中當改了什麼東西都不用 重啓,會自動重新加載,這個是定時任務
javabean:
內省類:
將map轉化爲制定類型的bean,map的key對應bean的屬性的名,value 對應bean的值
jsp創建javabean的標籤,創建的bean的名稱是user1
設置javabean的對象的值
el表達式獲得域中的值
項目名稱:
el表達式:需要這些jar包
自定義el函數
jstl:
jstl自定義標籤:
自定義類:
需要重寫下面的方法:
然後創建文件,文件類型選擇tld
然後修改tld文件:
其中tld文件的頭我們應該仿照:jstl的jar包
jsp頁面如果引入自定義的標籤:
調用我們的標籤:因爲我們配置時:標籤體爲空,所以執行時需要將標籤體爲空
我們可以繼承類來實現自定義
在tld文件中配置:
寫一個帶標籤體的標籤
tld文件配置
jsp中運行: