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

JavaWeb之JSP基礎小結

Oct 11, 2016 pm 04:36 PM

下面程式碼示範的是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)注释

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


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1424
52
Laravel 教程
1322
25
PHP教程
1270
29
C# 教程
1250
24