1.在HTTP的WEB應用中, 應用客戶端和服務器之間的狀態是經過Session來維持的, 而Session的本質就是Cookie,php
簡單的講,當瀏覽器向服務器發送Http請求的時候, HTTP服務器會產生一個SessionID,這個SessionID就惟一的標識了一個客戶端到服務器的請求會話過程。
數據庫
就如同一次會議開始時,主辦方給每位到場的嘉賓一個臨時的編號胸牌同樣, 能夠經過這個編號記錄每一個嘉賓(客戶端)的活動(請求狀態)。瀏覽器
爲了保持這個狀態, 當服務端向客戶端迴應的時候,會附帶Cookie信息,固然,Cookie裏面就包含了SessionID 服務器
客戶端在執行一系列操做時向服務端發送請求時,也會帶上這個SessionID, 通常來講,Session也是一個URL QueryParameter ,就是說,session能夠以Key-Value的形式經過URL傳遞 session
好比,http://www.51etest.com/dede/login.php?PHPSESSIONID=7dg3dsf19SDf73wqc32fdsf post
通常而言,瀏覽器會自動把此Session信息放入Header報文體中進行傳遞。
網站
若是瀏覽器不支持Cookie,那麼,瀏覽器會自動把SessionID附加到URL中去。
url
2.在這個例子中,以登錄這個功能點進行講解.spa
首先,咱們登錄的頁面是http://www.51etest.com/dede, 咱們第一次訪問這個頁面後,能夠從服務器過來的Http Response報文中的Header中找出服務器與瀏覽器向關聯的數據 — Cookie,3d
並且Session的值也在Cookie中. 因而,咱們能夠經過分析Set-Cookie這個Header中的參數的值,找到Seesion的Key-Value段。
而後,咱們再向服務器發送請求,請求URL爲:post@@http://www.51etest.com/dede/login.php@@userid=admin&pwd=tidus2005&gotopage=/dede/&dopost=login
服務器驗證登錄成功了, 而且在這次會話變量中增長了咱們登錄成功的標識。
3.增長一個廣告定義
增長一個廣告定義其實就是一個添加數據的過程,無非是咱們把咱們要添加的數據經過參數的形式告訴指定url頁面,頁面獲取後添加到數據庫去而已。
此url地址爲:
post@@http://www.51etest.com/dede/ad_add.php@@dopost=save&tagname=test&typeid=0&adname=test&starttime=2008-05-29
由於這個頁面會先判斷是否登錄
而判斷的依據,前面講了,就是根據請求時的SessionID找到指定的Session數據區中是否存在的登錄信息,
因此固然要把訪問登錄頁面時獲取的SessionID原封不動的再發回去
至關於對服務器說,這是剛剛來時,你發個人臨時身份證,我如今能夠行使個人權利。
這就是整個Java後臺登錄網站,而後添加數據的過程。