日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

jsp需要多少java基础_Java基础——JSP(一)

發(fā)布時間:2023/12/4 javascript 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jsp需要多少java基础_Java基础——JSP(一) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

注意:訪問JSP的過程

如果是第一次訪問服務器,則翻譯成一個對應的java文件(Servlet)。然后,再被編成 .class 文件并加載到內(nèi)存中。

如果是以后訪問,則直接調(diào)用內(nèi)存中的jsp實例,所以第一次訪問慢,以后訪問會更加快。

四、3種JSP注釋

1.

//this is

/*this

is*/

%>

2.

這是被注起來的內(nèi)容

這是注起來的

--%>

3.

//這里的內(nèi)容會發(fā)送到客戶端,但瀏覽器不會顯示

五、JSP腳本元素(3種)

1.

1) 代碼段 它要嚴格遵守java語言規(guī)范,需要導包的要導包 和 之間的java代碼是可以互相訪問的,相當于寫在一個 里

2.

2) 聲明 //注意

}%>

3.

3) 表達式 //注意

例子: //和下面的寫法等價

附:myeclipse 生成的jsp頁面,解說:

(在實際應用中,不需要的我們可以刪除它)

//解說:page指令,import用來導包的,pageEncoding指當前頁面編碼方式

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";//上下對齊解說://http//localhost//8080//shop-admin//上面最后生成的結(jié)果:->http://localhost:8080/shop-admin/

%>

//解說:言檔類型聲明

//解說:

My JSP 'test.jsp' starting page

//解說:不緩存

//解說:不緩存

//解說:不緩存

//解說:給網(wǎng)絡機器人用來搜索的關(guān)鍵字

六、JSP版本的計算器(代碼示例)

//接收參數(shù)

String num1 =request.getParameter("num1");

String num2=request.getParameter("num2");

String flag=request.getParameter("flag");int n_num1=0;int n_num2=0;int result=0;if(num1!=null&&num2!=null&&flag!=null){//計算

n_num1=Integer.parseInt(num1);

n_num2=Integer.parseInt(num2);if(flag.equals("+")){

result=n_num1+n_num2;

}else if(flag.equals("-")){

result=n_num1-n_num2;

}else if(flag.equals("*")){

result=n_num1*n_num2;

}else if(flag.equals("/")){

result=n_num1/n_num2;

}

out.print("

計算結(jié)果是 "+result+"

");

}//輸出結(jié)果

%>

請輸入第一個數(shù):

>+

>-

>*

>/


請輸入第二個數(shù):

七、MVC模式

M? ->mode 模型層 -> javaBeen? (比如 UserDao,UserInfo)

V? ->view 視圖層? -> html , jsp

C? ->controller 控制層? ->由Servlet擔當

八、JSP指令

指令是為JSP引擎而設(shè)計的,它不直接產(chǎn)生任何輸出,只是告訴引擎如何處理JSP頁中的其余部分。指令必須嵌套在 中,其本語法如下

,其中屬性名是大小寫敏感的

//例子

* JSP中的指令一共有三種

-- page?? //

-- include?? // 用來包含別的頁面

-- tablib ? // ? 用來指定標簽庫

* page 指令

-- Page 用來定義jsp頁面的各屬性,幾乎所有的頁面都會出現(xiàn)page屬性

-- 無論page屬性出現(xiàn)在什么位置,它的作用都是整個jsp頁面

-- 一個頁面可以包含多任意數(shù)量的page指令

* page 指令的屬性

--language :jsp頁面采用的語言,默認的是”java”

--contentType: 用于設(shè)置響應正文的 mime 類型(即指定Content-Type響應頭字段的值),和說明

JSP文件中的文本內(nèi)容的字符集編碼. content-Type? 默認的mime 類型是 text/html,字符集是”iso8859-1”

JSP引擎會根據(jù)page指令的contentType 屬性生成相應調(diào)用ServletRresponse.setContentType 方法的語句

--extends:在當前的jsp頁面中所用到的類的基類。(一般不使用)

--import:當前jsp頁面所用到的java類。

--session:當前的jsp頁面是否使用會話。默認的是true.(不要修改它)

如果將其設(shè)為false,則JSP翻譯成的Servlet將不自動預先創(chuàng)建好Session隱式對象

--buffer:指定了out 變量所使用的緩存的大小。默認的是8K.

--autoFlush :當緩沖區(qū)滿的時候,是否自動將值輸出至jsp頁面。默認的是true.

--errorPage:用來處理已經(jīng)發(fā)生的,但當前頁面沒有捕獲的異常。例如要求有輸入?yún)?shù),但是沒有輸入.

它的屬性值必須使用相對路徑,如果以/開頭,表示想對于當前web應用程序的根目錄,而不是站點根目錄

--isErrorPage: 設(shè)置當前頁面是否是專門用于處理其他頁面未捕異常的頁面,默認值為false

只有明確的將 isErrorPage 設(shè)為true,當前頁面才能用做異常處理,才能拿到exception隱式對象

==小例子: errorPage 指令 的應用

在要捕捉異常的頁面中:

-- 在異常處理頁面中

--

--

--pageEncoding :指定jsp源文件中的字符所使用的字符集編碼

pageEncoding 指jsp文件本身的編碼

contentType="text/html;charset=gkb" 這里的charset 指的是服務器發(fā)送給客戶端時的內(nèi)容編碼

注意:JSP要經(jīng)過兩次編碼

==第一階段,將jsp編譯成 .java 它會根據(jù)pageEncoding來讀取jsp 結(jié)果是由指定的編碼方案翻譯成統(tǒng)一的UTF-8 的java源碼(即.java)

如果pageEncoding設(shè)定錯的話,將會出現(xiàn)中文亂碼

==第二階段 就是由java源碼到java的字節(jié)碼的編譯,不管JSP文件在編寫的時候用的是什么編碼,最后這個階段的結(jié)果全是UTF-8 java源碼

* include 指令

include 指令? 是靜態(tài)導入

用于通知JSP引警在翻譯當前JSP頁面時將其他文件中的內(nèi)容合并進當前JSP頁面轉(zhuǎn)換成的Servlet源文件中,這種在源文件級別進行的引入稱為靜態(tài)引入,當前JSP頁面和靜態(tài)引入的頁面緊密結(jié)合成一個Servlet。

1 被引入的文件必須尊循JSP語法,可以包含靜態(tài)HTML,JSP腳本元素,JSP指令 和 jsp行為元素等普通JSP頁面所具有的一切內(nèi)容

2 被引入的文件可以使用任意擴展名,(就是叫.html也行), 為了見名知義,jsp規(guī)范建議使用.jspf (jsp fragments) 作為靜態(tài)引入文件的擴展名

3 在將JSP文件翻譯成Servlet 源文件時,JSP引擎將合并被引入的文件與當前JSP頁面中的指令元素,所以,除了pageEncoding? 和 import ,page指令的其他屬性不能在這兩個頁面中有不同的設(shè)置

4 除了指令元素外,要引入的文件中的所有其他元素都被轉(zhuǎn)換成相應的java代碼,然后插入進當前

JSP 頁面所翻譯成的Servlet文件中,插入的位置和 include 指令 在當前jsp 頁面中的位置保持一致

5 兩者是在 JSP引擎翻譯成Servlet的過程中進行合并的,而不是先合并成源文件再翻譯

6 file 屬性設(shè)置的路徑必須是相對路徑,如果以 / 開頭,指的是相對于當前web應用程序的根目錄,而不是 站點根目錄

7 出現(xiàn)在一個 JSP 頁面中的 include 指令的數(shù)量不受限制

bbb
數(shù)據(jù)

* taglib 指令

通知 JSP 容器,頁面依賴于自定義標記庫

總結(jié)

以上是生活随笔為你收集整理的jsp需要多少java基础_Java基础——JSP(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。