javascript
JSP数据交互
JSP數據交互
一、jsp中java小腳本
1.<% java代碼段%>
2.<% =java表達式%>不能有分號
3.<%!成員變量和函數聲明%>
二、注釋
1.<!--html注釋-->客戶端可以看到
2.<%--jsp注釋--%>客戶端不能看到
三、jsp頁面的的執行過程
1.客戶端請求(輸入URL)
2.服務器
(1)現將jsp翻譯成.java文件(第一次請求)
如果是第二次請求,并且jsp頁面內容未改變
(2)將java文件編譯成.class文件
(3)執行.class文件
3.將執行后的結果和html靜態內容發送到客戶端
4.斷開連接
四、jsp內置對象
是由web容器創建的對象,可以直接用,不用再new
1.out:方法print(文本)向客戶端輸出內容
2.request:客戶端請求內容
方法:
getParameter(“鍵”),獲取客戶端提交的單個數據
getParameterValues(“鍵”)獲取客戶端提交的多個數據
setCharacterEncoding("編碼")解決post提交方式的亂碼
getRequestDispatcher("頁面"):進行頁面轉發
3.response:響應客戶端的請求,向客戶端輸出內容
方法
sendRedirect("頁面");//進行頁面重定向
五、轉發和重定向的區別
1.轉發
a.服務器行為
b.客戶端只發送了一次請求
c.保留請求數據,頁面間可以共享數據
d.地址欄不改變
2.重定向
a.客戶端行為
b.客戶端發出了2次請求
c.不能保留數據,頁面間不能共享數據
d.地址欄改變
六、會話:session
瀏覽器與服務器的一次通話(類似一次打電話)
1.會話跟瀏覽器是一一對應的
2.同一個瀏覽器不同請求是一次會話
3.不同瀏覽器就是不同會話
4.一般用于保存客戶端特定的信息(臨時)
session失效:
1.原則上,瀏覽器關閉,session就失效(實際過程中不一定)
2.超過有效期失效
3.調用invalidate(),立即失效
方法:
setAttribute(String key,object value),向session保存數據
object getAttribute(String key)向session讀取數據
setMaxInactiveIntervals設置有效期
invalidate()使session失效
removeAttribute(String key)移除指定的session
七、inlude指令:將頁面信息包含到另一個頁面(靜態包含)
<%@ include file="頁面"%>
八、application:應用程序級別的對象
各個客戶端共享的數據
方法:
setAttribute(String key ,object value)
getAttribute(String key)
getRealPath("虛擬路徑");根據虛擬路徑獲取物理路徑
九、Cookie: 保存特定客戶端的信息
用法:
1.創建
Cookie ck=new Cookie(String key,String value)
ck.setMaxAge("時間"),設置有效時間,不設置默認瀏覽器關閉時失效
2.保存
response.addCookie(ck);
3.讀取cookie
a.Cookie[]cks=request.getCookies();
b.遍歷
getName():獲取當前cookie的名字(鍵名)
getValue():獲取當前cookie的值
十、session與cookie的區別
session cookie
保存在服務器的內存中 保存在客戶端的硬盤上
保存object類型 保存String類型
保存臨時數據 保存永久數據
安全性高 安全性差
十一、JavaBean
是一個java類
從功能上來說,java類分為:業務類和數據類
一個java類符合以下要求才是JavaBean:
1.是一個公有類
2.有無參的公共的構造方法
3.屬性私有:第一個字母小寫
4.有getter和setter方法
(方法名格式:get屬性名(大寫),set屬性名(大寫))
十二、內置對象補充
1.pageContext:當前頁面執行期間的信息
2.page:當前jsp頁面
3.config:配置jsp頁面初始化數據
4.exception:異常
十三、四大作用域(作用范圍)
1.page:當前頁面
2.request:一次請求同一個請求
3.session:同一個客戶端
4.application:整個應用程序
十四、文件包含
1.include指令:<%@ include file="頁面"%>
靜態包含:將指定頁面的內容復制到另一個頁面,然后執行
2.include方法:pageContext.include("頁面")
動態包含:先執行頁面動態代碼,然后將結果和靜態代碼包含到另一個頁面
十五、頁面之間的傳值
1.form表單傳值
2.session傳值
3.通過超鏈接(類似form表單 get提交)
url?keyname=值1 &keyname=值 2
轉載于:https://www.cnblogs.com/xiaoyu1997/p/6104273.html
總結
- 上一篇: win7下装ubuntu14.04双系统
- 下一篇: 【FastJSON】解决FastJson