首頁 > 类库下载 > java类库 > JavaWeb之JSP基礎小結

JavaWeb之JSP基礎小結

高洛峰
發布: 2016-10-11 16:36:41
原創
1497 人瀏覽過

下面程式碼示範的是JavaFX進程命令列參數的實例。大家可以參考一下。

1.概述

  JSP文件是透過三大指令,九大物件以及JSP表達式等與HTML語句結合形成的一個文件,其本質為Servlet。簡單來說,即Java程式碼+HTML語句。

2.運行原理

  每個JSP頁面被訪問時,即被JSP引擎翻譯為一個Servlet源程序,該源程序再被編譯成Servlet的class類文件。之後的執行流程與普通Servlet的執行一致。 Servlet引擎將class類別檔案裝載並翻譯執行。

3.九大對象

  JSP有9個內建對象,不需要聲明就可以使用。

  (1)request:實際上就是HTTPServletRequest。

  (2)response:實際上是HTTPServletResponse。

  (3)pageContext:代表當前JSP頁面,幾乎包含了當前JSP頁面的所以信息,也可以從該對像中獲取其它八個對象。

  (4)session:代表瀏覽器和伺服器的一次會話,是HttpSession的一個物件。

  (5)out:可以直接透過該物件的方法在頁面輸出文字資訊或HTML程式碼。

  (6)application:代表目前WEB應用,是ServletContext物件。

  (7)exception:在聲明了後可以透過該物件輸出異常資訊。 

  (8)config:目前JSP對應的Servlet的ServletConfig對象,若要存取目前JSP的設定參數,需要映射存取才可以。

  (9)page:指向目前Jsp對應的Servlet物件的參考 ,但是為object型別。

   其中最為常用也最為重要的四個物件依作用域範圍如下:

    pageContext:作用域為目前JSP頁面。透過引入的文件中的變數等當前頁面也可以存取。但是透過pageContext.include("file")引入文件的變數和參數並不能直接在當前頁面使用和修改,該方法的實質是將file中的內容原封不動地添加在當前頁面,可以理解為將HTML頁面直接拼接在該位置。

    request:作用範圍在請求轉送的過程中一直有效。

    session:作用域為瀏覽器和伺服器的一次會話。直覺表現在瀏覽器的一次開啟與關閉。應用案例如購物網站中購物車的實現。

    application:當應用程式裝載在伺服器中時有效。該應用程式從伺服器卸載或重新裝載,以及伺服器關閉等都會導致該物件失效。應用案例如網站統計造訪人數。

  與屬性相關的方法:

    Object getAttribute(String name)取得指定的屬性

    〜) get getAttriute(LgetAttriute)( Attribute(String name)移除指定的屬性

    setAttribute(String name,Object o)設定屬性

 

4.三大指令

  (1)page:聲明頁面資訊或匯入內容

    ① 導入檔案

    ① 導入所需的jar包。外部新增的jar包一般存放在Web項目下 WEB-INFlib、

<%@ page import="java.util.*"%>
登入後複製

           ② 關閉session,session預設為開啟。

<%@ pagesession="false" %>
登入後複製

    ③ 目前頁面出錯則跳到"file"頁。並且該跳轉方式為請求轉送。

<%@ page errorPage="file"%>
登入後複製

    ④ 上文的"file"頁面,可以對頁面錯誤做處理或說明,可以配合exception物件使用。

<%@ page isErrorPage="true"%>
登入後複製

    ⑤ 目前JSP頁面的字元編碼(JSP檔案編碼)

<%@ page pageEncoding="utf-8"%>
登入後複製

    ⑥ 當前JSP頁面的回應類型(伺服器發送給瀏覽器的內容『

<%@ page contentType="text/html; charset=utf-8"%>
登入後複製

    ⑧ 指定JSP頁面的信息,可以使用getServletInfo()方法獲取到該字串

<%@ page isELInored="false" %>
登入後複製

  (2)include指令:將其它文件包含進來與當前頁面進行合併。這類文件通常包括文字、JSP或其他格式的文件。

    ① 靜態引入:通知JSP引擎在翻譯JSP頁面時,將其他來源檔案合併到目前JSP頁面轉換成的Servlet來源檔案中。兩個來源檔案合併為一個Servlet來源檔案。 "file"為相對路徑。

<%@ include page="file"%>
登入後複製

    ②动态引入:该句被执行时程序通过请求转发跳转到"file",执行当中的内容之后再返回执行当前页面的剩余部分,实际是两个Servlet源文件

<jsp:include page="file"></jsp:include>
登入後複製

  (3) taglib: 能够让用户根据需求自定义新的标签,便于功能的实现,但因此也导致了代码易读性不高。

5.其它

  (1) JSP表达式:可以直接将表达式中的内容显示在浏览器中

<%= "Hello World!" %>
登入後複製

  (2) 声明函数

<%!
     pulic void function(){
      out.println("Hello World!");
    }%>
登入後複製

  (3)注释

 <!-- 客户端注释,客户端查看源可以看到 -->
登入後複製
  <%-- 服务端注释,客户端查看不到 --%>
登入後複製


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板