国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

日常總結——JSP篇(補)

2019-11-15 01:15:20
字體:
來源:轉載
供稿:網友
日常總結——jsp篇(補)序——

   初次接觸JSP,寫一個登錄注冊界面

正文——

  JSP介紹:JSP通過在標準的HTML頁面中插入java代碼,其靜態的部分無須java程序控制。每個JSP頁面就是一個servlet實例,WEB應用中的每個JSP頁面都會由servlet容器生成對應的servlet。

  理解:在HTML語句中加入java代碼的頁面

  servlet介紹:servlet必須運行在服務器中。servlet容器的作用是處理客戶端的請求,并將處理結果返回給客戶端。當客戶請求到來時,servlet容器獲取請求,然后調用某個servlet,并把servlet的執行結果返回給客戶。Tomcat就是一個servlet容器。

  servlet工作過程:

  因為JSP在執行第一次后,會被編譯成Servlet的類文件,即.class,當再重復調用執行時,就直接執行第一次所產生的Servlet,而不再重新把JSP編譯成Servelt。在執行JSP網頁時,通常可以分為兩個時期:轉譯時期(Translation Time)和請求時(Request Time)。

當JSP網頁在執行時,JSP Container會做檢查工作,如果發現JSP網頁有更新修改時,JSP Container才會再次編譯JSP成Servlet; 如果JSP沒有更新時,就直接執行前面所產生的Servlet。

◆轉譯時期:JSP網頁轉移成Servlet類。

◆請求時期:Servlet類執行后,響應結果至客戶端。

轉譯期間做了兩件事情:

◆轉譯時期:將JSP網頁轉移為Servlet源代碼 .java.

◆編譯時期:將Servlet 源代碼 .java編譯成 Servlet類 .class.

  request與session的區別:request對象和session對象的最大區別是生命周期 request對象的生命周期是針對一個客戶端(說確切點就是一個瀏覽器應用程序)的一起請求 當請 求完畢之后,request里邊的內容也將被釋放點 ,也就是request的生命周期只在數據提交 而session的生命周期也是針對一個客戶端 但是卻是在別人設置的會話周期內(一般是20-30分鐘) session里邊的內容將一直存在 即便關閉了這個客戶端瀏覽器 session也不一定會馬上釋放掉的 簡單來說可以這么理解 session相當于是一個客戶端的全局變量; request是某一次訪問的局域變量;

  數據庫的連接:

1 Class.forName("com.MySQL.jdbc.Driver");2 conn=DriverManager.getConnection(url,user,passWord);

"com.mysql.jdbc.Driver"需要插入jar包

url:數據庫名

  連接數據庫可以用靜態代碼塊——靜態代碼塊:一般情況下,如果有些代碼必須在項目啟動的時候就執行的時候,需要使用靜態代碼塊,這種代碼是主動執行的;需要在項目啟動的時候就初始化。

  數據庫數據類型——VARCHAR:是一種比CHAR更加靈活的數據類型,同樣用于表示字符數據,但是VARCHAR可以保存可變長度的字符串。

  session介紹:在WEB開發中,服務器可以為每個用戶瀏覽器創建一個會話對象(session對象),注意:一個瀏覽器獨占一個session對象(默認情況下)。因此,在需要保存用戶數據時,服務器程序可以把用戶數據寫到用戶瀏覽器獨占的session中,當用戶使用瀏覽器訪問其它程序時,其它程序可以從用戶的session中取出該用戶的數據,為用戶服務。在服務器創建session對象的同時,會為該session對象生成唯一的session Id,客戶端和服務器通過session Id互相確認

  JDBC:有一組用java語言編寫的類和接口,規定了java開發人員訪問數據庫所使用的方法。

  javabean:簡單理解就是一串類似于

PRivate bool male;

public bool isMale(){return this.male;}public void setMale(bool b){this.male=b;}

request.getParameter()與request.getAttribute()的區別:

request.getAtribute(String name) 返回name屬性的值request.getParamter(String name) 獲得客戶傳遞給服務器的name參數的值request是對當前頁面的請求,如果當前這個頁面再去請求另一個頁面 會生成新的requestrequest.getAttribute():是request時設置的變量的值,用request.setAttribute("name","您自己的值");來設置值, request.getParameter():提取發送過來的參數如request.getAttribute()得到的是object,request.getParameter()得到的是String

post與get的區別:

  post提交數據是隱式的,get是通過在url里面傳遞的(可以看一下你瀏覽器的地址欄),用來傳遞一些不需要保密的數據。用get時,傳輸數據的大小有限制 (注意不是參數的個數有限制),為2K;而post沒有此限制

客戶端用cookie保存了sessionID  客戶端用cookie保存了sessionID,當我們請求服務器的時候,會把這個sessionID一起發給服務器,服務器會到內存中搜索對應的sessionID,如果找到了對應的 sessionID,說明我們處于登錄狀態,有相應的權限;如果沒有找到對應的sessionID,這說明:要么是我們把瀏覽器關掉了(后面會說明為什 么),要么session超時了(沒有請求服務器超過20分鐘),session被服務器清除了,則服務器會給你分配一個新的sessionID。你得重 新登錄并把這個新的sessionID保存在cookie中。

客戶端沒有用cookie保存sessionID  這個時候如果我們請求服務器,因為沒有提交sessionID上來,服務器會認為你是一個全新的請求,服務器會給你分配一個新的sessionID,這就是 為什么我們每次打開一個新的瀏覽器的時候(無論之前我們有沒有登錄過)都會產生一個新的sessionID(或者是會讓我們重新登錄)

JSP的注釋:

<%-- JSP中的注釋,看不見 --%><% // 注釋,看不見 /* 注釋,看不見 */%><!--顯式注釋-->

URL參數:   http://127.0.0.1/index.jsp?name=user&password=user其中name和password為URL參數


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 任丘市| 兴化市| 和政县| 朔州市| 龙泉市| 平原县| 绥中县| 克东县| 平安县| 育儿| 南城县| 阳西县| 岳阳县| 华容县| 淅川县| 定西市| 雅江县| 湖州市| 分宜县| 大名县| 延长县| 信丰县| 阳西县| 蓝山县| 清涧县| 敖汉旗| 浦东新区| 吉首市| 伊金霍洛旗| 泾阳县| 日照市| 县级市| 新巴尔虎右旗| 黔西| 凯里市| 凤城市| 五莲县| 安泽县| 仙居县| 广东省| 南漳县|