JSP學習筆記二之JSP的語法和9大內置對象(上)

今天還是在學習JSP的內容。隨着對JSP的瞭解,發現JSP的主要用途和功能了。

一、首先是JSP的語法部分:

1   <%  代碼片段 %> 

這裏是腳本程序,可以在裏面寫任意的java代碼。

<%
      String str="hello world";
      out.println(str);
%>

如果代碼中需要導入類包,則需要在page指令中使用import來完成。

<%@ page language="java" import="java.util.*,java.text.*" contentType="text/html; charset=utf-8"%>

 <%! 聲明語句 %>

一個聲明語句可以聲明一個或多個變量、方法,供後面的Java代碼使用。在JSP文件中,您必須先聲明這些變量和方法然後才能使用它們

<%!String name=””; 
int a=0; %>

3 JSP的表達式<%=表達式  %>

一個JSP表達式中包含的腳本語言表達式,先被轉化成String,然後插入到表達式出現的地方。

Today's date: <%= (new java.util.Date()).toLocaleString()%>

4 JSP註釋

JSP註釋主要有兩個作用:爲代碼作註釋以及將某段代碼註釋掉。注意,JSP註釋掉的代碼在客戶端上是不顯示的。

<%-- 這裏就是註釋代碼--%>

二、接下來是JSP指令。主要有3種指令標籤:page ,include和taglib。

指令

描述

<%@ page ... %>

定義頁面的依賴屬性,比如腳本語言、error頁面、

緩存需求等等

<%@ include ... %>

包含其他文件

<%@ taglib ... %>

引入標籤庫的定義,可以是自定義標籤


至於指令的具體應用我會在後面的博客中寫的。

三、最後,今天主要看的是JSP的9大隱式對象。

JSP隱式對象是JSP容器爲每個頁面提供的Java對象,開發者可以直接使用它們而不用顯式聲明。JSP隱式對象也被稱爲預定義變量。jsp九大內置對象:
5個常用對象: out(輸出),request(請求),response(響應),session(回話),application(應用)
4個不常用: page ,pageContent, exception ,config

 

JSP所支持的九大隱式對象:

對象

描述

request

HttpServletRequest類的實例

response

HttpServletResponse類的實例

out

PrintWriter類的實例,用於把結果輸出至網頁上

session

HttpSession類的實例

application

ServletContext類的實例,與應用上下文有關

config

ServletConfig類的實例

pageContext

PageContext類的實例,提供對JSP頁面所有對象以及命名空間的訪問

page

類似於Java類中的this關鍵字

Exception

Exception類的對象,代表發生錯誤的JSP頁面中對應的異常對象


首先我們要知道Web程序是請求響應模式的:

用戶發送Http請求(request對象)和服務器給用戶Http響應(response對象)。

在介紹request和response對象之前,我們先講一下form表單在提交的時候使用的兩種方法:get和post。

<!--注意這段代碼使用的是post方法-->
<form name="loginForm" action="forward.jsp" method="post">
       <table>
         <tr>
           <td>用戶名:</td>
           <td><input type="text" name="username" value=""/></td>
         </tr>
         <tr>
           <td>密碼:</td>
           <td><input type="password" name="password" value="" /></td>
         </tr>
         <tr>
           <td colspan="2"><input type="checkbox" name="isUseCookie" checked="checked"/>十天內記住我的登錄狀態</td>
         </tr>
         <tr>
           <td colspan="2" align="center"><input type="submit" value="登錄"/><input type="reset" value="取消"/></td>
         </tr>
       </table>
</form>

這裏介紹一下表單的兩種方法的區別:

1、get:會以明文的方式通過URL提交數據,數據在URL裏可以看到。提交的數據最大是2Kb的,安全性較低但效率比Post方式的高。適合提交數據量不大,安全性不高的數據。比如:搜索、查詢等功能。這裏還有一個注意的就是get方式提交數據是不會修改任何數據的。而post方式提交數據是會修改數據的(比如發佈評論)。

2、post:將用戶提交的信息封裝在HTML header內。適合提交數據量較大、安全性高的用戶信息。比如:註冊、修改、上傳等功能。



發佈了45 篇原創文章 · 獲贊 31 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章