国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

JSP教程基礎篇之JSP的技術特點

開發 后端
本JSP教程將首先給您介紹JSP的基本情況,并用JSP源碼為您展示基本頁面的實現。

本JSP教程將首先給您介紹JSP的相關情況。

JavaServer Pages (JSP)是基于Java的技術,用于創建可支持跨平臺及跨Web服務器的動態網頁。

JSP可與微軟的Active Server Pages (ASP)相媲美,但JSP使用的是類似于HTML的標記和Java 代碼片段而不是用VBScript。當你使用不提供ASP本地支持的Web服務器(例如 Apache或Netscape服務器)時,你就可以考慮使用JSP了。你雖然也可以為這些服務器弄一個ASP附加軟件模塊,但是太昂貴了。現在Sun公司并不會因你使用JSP向你收費(雖然將來可能要收),況且用于Solaris、 Linux以及Windows系統的組件都很容易獲得。

不要把JSP與服務器端的JavaScript語言搞混了。Web服務器自動將通過JSP生成的Java代碼片段轉換成Java 片段(servlets)。 JSP也可自動控制許多功能,如過去用Perl腳本編寫功能程序或像ASP這樣的服務器專用API(應用編程接口)。

我們馬上就要開始幫助你建立一個使用JSP 技術的網站范例了。

準備好計算機以使用本JSP教程了。

你需要Java2軟件開發工具箱(J2SDK),過去稱之為Java開發工具箱(JDK)、JavaServer 網絡開發工具箱(JSWDK)、Tomcat,或者其它能支持JSP的Web服務器。升陽公司為Windows、Solaris以及 Linux平臺提供免費的J2SDK和JSWDK。

如果你想在現有的Web服務器上使用JSP,而此服務器本身不支持JSP和Java 代碼片段,可以試用Allaire公司的Jrun。它可以為Netscape的Enterprise Server和Fasttrack Server、微軟的Internet Information Server(IIS)和Personal Web Server(PWS)、Apache以及其他服務器充當Web服務器附件。你也可以使用Apache服務器的Java版,其中包含最新的JSWDK。

下載并安裝所需的軟件

目前,版本號為1.2.2-001的J2SDK可下載版以可安裝的歸檔文件形式出現。這個大約20MB的下載量軟件可提供一個徹底的Java開發環境,讓你創造任何基于Java并且利用了而標準核心API的解決方案。其實,你的Web服務器使用JSP的唯一條件是要有Java編輯器。要讓Web服務器知道編輯器的位置,需要JAVA_HOME 環境變量設置為J2SDK安裝目錄。如果你已經在Windows系統中進行了安裝并且接受了默認目錄, 請將“set JAVA_HOME=C:1.2.2”添加到你的“autoexec.bat”文件中,然后重新啟動。

安裝J2SDK后,下載并安裝JSWDK或者是Tomcat β版,即基于Java的Apache Web服務器的β版。你把JSWDK放在什么地方是無關緊要的,只要你以后能找到它就行。通常,將其放在頂層目錄中,這樣你在替換JSWDK或JSDK時無需刪除另一個軟件。安裝好這個文件后,準備工作已經就緒,你可以開始JSP開發工作了。

正確地安裝JSWDK后,請運行“startserver”腳本程序,以啟動Web服務器,使其按照默認情況監聽8080端口。你要在啟動服務器之后查看您是否已正確地安裝了此工具,請加載一個JSP樣本文件(http://locahost:8080/examples/jsp/)。如果你能成功地運行這些樣本文件,說明你已經正確地安裝了這個軟件。如果你在用來啟動服務器的控制臺窗口中看到報錯信息,你就需要做些修改。最經常發生的問題是沒有設置或不正確地設置了JAVA_HOME環境變量。要看到當前環境變量設置情況,要請在DOS提示符下鍵入“set”設置。

開始我們的JSP教程:

 在解釋 JSP語法前,創建一個快捷網頁,顯示目當前的日期和時間,并然后將之其保存為sample.jsp:

  1. ﹤html﹥   
  2. ﹤head﹥   
  3. ﹤title﹥First Page﹤/title﹥   
  4. ﹤/head﹥   
  5. ﹤body﹥   
  6. ﹤H3﹥Today is:   
  7. ﹤%= new java.util.Date() %﹥   
  8. ﹤/H3﹥   
  9. ﹤/body﹥   
  10. ﹤/html﹥ 

把這個文件以及你所有的HTML 和 JSP 頁面放在JSWDK安裝目錄下的網頁目錄里。你可以從http://localhost:8080/sample.jsp加載此網頁。該網頁首次被訪問時,Web服務器會把JSP編譯成Java代碼片段,這樣你就能夠看到當前的日期和時間了。

你已經下載、安裝并配置好了開發環境,你可以開始學習JSP語法并創建自己的基于JSP的解決方案了。

JSP基本語法

講完安裝問題后,現在進入來討論JSP語法。一個投機取巧的辦法是下載語法卡片。如果你不熟悉Java編程,也許你想看一下Sun的指南 。然而網頁創建者并不需要進行太多的Java開發。除了一些方法調用,在你的JSP網頁里應盡可能少用Java代碼。

記住以上提示,我們首先來看一看JSP指令和腳本元素,之后我們會解釋JavaBeans和隱含對象。共有五種JSP指令和腳本元素。在JSP 1.0版中,大部分JSP被一個以“<%” 開頭和以“%>”結尾的的標記括在其中。在更新的JSP 1.1規范出臺后,就有了與XML兼容的版本。

JSP指令和腳本元素

  1. Directives ﹤%@ directive %﹥   
  2. Declarations ﹤%! declaration %﹥   
  3. Expressions ﹤%= expression %﹥   
  4. Code Fragment/Scriptlet ﹤% code fragment %﹥   
  5. Comments ﹤%-- comment --%﹥  

指令

JSP指令是為JSP引擎而設計的。他們并不直接產生任何可見輸出,而只是告訴引擎如何處理其余JSP頁面。這些指令始終被括在 “<%@ ?%>”標記中。兩個最重要的指令是“pagePage”和“Include”。“Taglib”指令不在討論之列,但是在用JSP1.1創建自定義標記可以使用它。

幾乎在所有JSP頁面頂部都會看到“Page”指令。盡管不是必須的,但它可以讓你指定:
到何處查找起支持作用的Java類別:

出現Java運行問題時,將網上沖浪者引向何處:

還有你是否需要管理用戶的會話級信息,這些信息可能來自多個網頁(在下面的JavaBeans一節將對此做進一步講)述:

“Include”指令可以把你的內容分成更多可管理的元素,比如包括一個普通頁面頁眉或頁腳的元素。包含的網頁可以是一個固定的HTML 頁面或更多的JSP內容:

<%@ include file="filename.jsp" %>

聲明

JSP聲明用來讓你定義頁面級變量,以保存信息或定義JSP頁面的其余部分可能需要的支持方法。如果你發現代碼太多,通常最好把它們寫成一個獨立的Java類別。聲明一般都在“<%! ?%>”標記中。一定要以分號(;)結束變量聲明,因為任何內容都必須是有效的Java語句。

表達式

有了JSP表達式,表達式評估結果會被轉換成一個字符串,并且被直接包括在輸出頁面之內。JSP 表達式包含在“<%= ?%>” 標記中,沒有分號,除非在加引號的字符串部分使用分號。 <%= i %>

代碼片段/腳本片段

代碼片段/腳本片段(Scriptlets) JSP代碼片段或腳本片段是嵌在“<% ?%>”標記中的。這種Java代碼在Web服務器響應請求時就會運行。在腳本片段周圍可能是原始的HTML或XML語句,在這些地方,代碼片段可以使你創建條件執行代碼,或要用到另外一段代碼的代碼。例如,以下的代碼組合使用表達式和代碼片段,顯示H1、H2、H3和H4標記中的字符串“Hello”。代碼片段并不局限于一行源代碼:

  1. ﹤% for (int i=1; i﹤=4; i++) { %﹥   
  2. ﹤H﹤%=i%﹥﹥Hello﹤/H﹤%=i%﹥﹥   
  3. ﹤% } %﹥ 

注釋

最后一個主要的JSP元素是嵌入式注釋。盡管你始終可以在文件中加入HTML注釋,但用戶在查看頁面源代碼時會看到這些注釋。如果你不想讓用戶看到它,你就應該將其嵌入“<%-- ?--%>” 標記中: <%-- comment for server side only --%>

帶JavaBean 的JSP

雖然你可以把大段的代碼放在腳本片段(scriptlet)內,但是絕大多數的Java代碼屬于可重復使用的名為JavaBea的組件。JavaBean類似于ActiveX控件:他們都能提供常用功能并且可以重復使用。

JavaBean的值是通過一些屬性獲得的,你可通過這些屬性訪問JavaBean設置。以一個人來打比方,這個人就是一個JavaBean,這個人的名字、身份證號碼以及住址就是其屬性。在JSP網站,你基本上就是通過玩“Connect the beans)”來使你的網站動態化。

假設JavaBean先于網站被創建出來,你需要做的第一件事就是告訴JSP頁面它將要用到一個“Bean”。你可以用“”標記來做到這一點: 

”標記要求你用“id”屬性來識鑒別Bean。這里你提供一個名字來JSP頁面其余部分的Bean。除了“id”屬性,你還須告訴網頁面從何處查找Bean,或者它的Java類別名是什么。這種類別屬性提供確 認Bean的功能,其他一些方法也可以做到這一點。最后一個必需的元素是“scope”屬性。有了“scope”屬性的幫助,你就能告訴Bean為單一頁面(默認情況)[scope="page"]、為[scope="request"]請求為會話[scope="session"],或者為整個應用程序[scope="application"]保持留信息。有了會話范圍,你就能非常容易地在JSP網頁面上維護購物車等項目。

一旦你聲名了一個JavaBean,你就可以訪問它的屬性來定制它。要獲得屬性值,請用“”標記。有了這個標記,你就能指定將要用到的Bean名稱(從useBean的"id"字段得到)以及你想得到其值的屬性。實際的值被放在輸出中:

要改變JavaBean屬性,你必須使用“”標記。對這個標記,你需要再次識別Bean和屬性,以修改并額外提供新值。如果命名正確,這些值可以從一個已提交的表中直接獲得:參數獲得:

可以從一個參數獲得,但你必須直接命名屬性和參數:

或者直接用一個名字稱和值來設置:

關于JavaBean 的最后一件事: 為了Web服務器能找到JavaBean,你需要將其類別文件放在一個特殊位置。用JSWDK,最 方便的位置是安裝目錄下的類別目錄,如jswdk-1.0.1classes。

JSP隱含對象

與JSP語法相關的最后的元素是一些叫做“隱含對象”的東西。在JSP代碼片段中,你可以利用這些隱含對象與JSP頁面的代碼片段執行環境產生互動。應盡量少訪問這些內置隱含對象。但是,在一某些情況下,訪問隱含對象是可被接受的。若要充分利用隱含對象,就需了解最新的Java Servlet API。
下表列出可用的隱含對象集合。

隱含對象說明

◆request 客戶端請求,包括從GET/POST請求傳遞過來的參數

◆response 網頁傳回客戶端的反應

◆pageContext 在此管理網頁屬性

◆session 與請求關聯的會話

◆application 代碼片段的運行環境

◆out 傳送響應的輸出流

◆config 代碼片段配置對象

◆page JSP網頁本身

◆exception 有錯的網頁中未被捕獲的例外 

這些都是用來做什么的,你又如何來使用它們呢?基本上說,在你的腳本片段里,你可以用它們進入執行JSP代碼的代碼片段。用不著深入了解太多的Servlet API細節,我們來看看能用它們來做到的某些事情:

你可以不用表達式,直接進入“Out”隱含對象,將某些內容輸出到響應中:
<% out.println("Hello"); %>。
用不著把一個參數直接送到JavaBean,你可以從請求對象獲取參數值: 
<% String name=request.getParameter("name"); out.println(name); %>

在你用JSP進行開發的過程中,進行更多的開發的過程中,如果創建了JavaBeans或發現JSP文件中加入了太多的Java源代碼,你就需要創建起支持作用的Java分類(class)了,它可以協助你重復利用源代碼并減少JSP網頁編譯時間。當你需要創建Java分類文件時,你必須:

將JDSWK installation目錄添加到PATH中。在autoexec.bat文件PATH行的末尾,加入“C:1.2.2/bin”。
用這個命令將JAR文件復制到“jrelibext:”目錄中: copy c:jswdk-1.0.1libservlet.jar c:jdk1.2.2jrelibext.

創建一個JSP網站

現在該是把所有這些JSP語法派上用場的時候了。我們將創建一個網頁,它有一個輸入表單,可以使用戶輸入一個股票代號以獲得出當前股價(有20分鐘)。如果輸入有誤,則顯示報錯網頁。

quote.jsp
首先,用 這個代碼 創建一個quote.jsp網頁并將其保存在JSWDK安裝目錄下的網頁目錄中。大多數的網頁是標準的HTML,其間散布著JSP代碼。第六行是一個網頁指示,表示將把所有錯誤發送到“errorPage.jsp”文中。第13到15行是一個腳本片段,主要說明只有提供“符號”參數才會顯示表格。“If”代碼段在32到34行結束。第17行定義了要用的JavaBean,第18行從參數加載JavaBean的符號屬性。第27行到29行顯示Bean的屬性。除了"if "代碼段,實際上并不涉及其它Java代碼。

errorPage.jsp
下一步,將下列JSP源代碼保存到網頁目錄中的“errorPage.jsp”文件中。“這是一個錯誤網頁”的提示為第一行,它將isErrorPage網頁提示屬性設置為真。上一頁說了明錯誤網頁的位置,本頁則說明這就是錯誤網頁。其它JSP文件中的JSP專用代碼只有訪問隱含例外對象才用到。網頁只顯示其值:

  1. ﹤%@ page isErrorPage="true" %﹥   
  2.  
  3. ﹤html﹥   
  4. ﹤head﹥   
  5. ﹤title﹥Error Page﹤/title﹥   
  6. ﹤/head﹥   
  7. ﹤body﹥   
  8.  
  9. ﹤h1﹥Our Error Page﹤/h1﹥﹤/font﹥   
  10.  
  11. ﹤!-- Print Exception --﹥   
  12. We got ourselves an exception:   
  13. ﹤%= exception %﹥   
  14. ﹤a href="quote.jsp"﹥Restart﹤/a﹥   
  15. ﹤/body﹥   
  16. ﹤/html﹥。  

Quotes.java

Quotes JavaBean 利用Yahoo資源來獲得股票價格。需要將此 資源保存到JSWDK安裝目錄下“classescomjguru”目錄中的“quotes.java”文件中。請在此用JSDK中的Javac編輯器來編輯它。

你的第一個JSP網頁,創建了這兩個JSP文件,建立了JavaBean資源文件并編輯了它后,你就可以從http://localhost:8080/quote.jsp加載“quote.jsp”文件以查看結果,假設你沒有更改JSWDK安裝設置,轉而使用別的端口。根據本JSP教程這個網頁當然能做得更漂亮,但是它已實現了需要實現的功能,并且很好地展示了JSP的功能。

【編輯推薦】

  1. 基于JSP實現數據庫中圖片的存儲與顯示
  2. 構造JSP和Javabean開發和發布環境的方法
  3. JSP設計模式淺析
  4. 什么是JSP以及其強弱勢
  5. JSP頁面Tomcat提高性能之王道
責任編輯:仲衡 來源: 互聯網
相關推薦

2009-06-30 11:18:16

HTML表單JSP教程

2009-06-30 11:02:29

JSP教程

2009-06-30 11:33:55

腳本JSP教程

2009-06-30 16:33:42

JSP2.0特性JSP教程

2009-07-06 16:05:50

JSP特點

2009-07-06 16:55:06

JSP題目

2009-07-07 17:30:58

JSP應用開發

2011-05-18 11:14:45

JSP

2009-06-29 17:01:49

Servlet和JSPJSP技術

2009-07-06 10:10:43

MyJSP

2009-07-02 16:56:51

JSP技術

2009-07-02 13:10:09

JSP技術

2009-07-01 11:44:32

JSP學習教程

2009-07-02 11:34:42

JSP指令JSP開發

2009-06-30 17:01:27

訪問量JSP教程

2009-07-02 12:56:01

JSP技術

2009-07-02 10:27:20

JSP技術JSP入門

2009-07-02 11:15:31

學習JSP技術

2009-07-01 11:05:18

頁面與代碼分離JSP源碼

2009-07-03 14:41:03

點贊
收藏

51CTO技術棧公眾號

国产劲爆久久| 欧美怡红院视频| 亚洲柠檬福利资源导航| 亚洲成a人片在线不卡一二三区 | 国产精品国模大尺度视频| 一区二区三区蜜桃| 色欧美乱欧美15图片| 日韩女优制服丝袜电影| 亚洲区在线播放| 欧美成人精品在线播放| 国产精品av在线| 国产欧美一区二区三区不卡高清| 亚洲二区自拍| 成人av一级片| av福利导福航大全在线播放| 永久免费av片在线观看全网站| 草草视频在线| 亚洲欧洲日韩精品在线| 国产日韩三级| 欧美日韩视频一区二区三区| 日韩电影在线一区二区三区| av日韩在线网站| 亚洲国产一区二区三区青草影视| 欧美高清www午色夜在线视频| 亚洲人成五月天| 国产91精品高潮白浆喷水| 亚洲a级在线观看| 欧美 日韩 国产 在线观看| 久久久久国产一区| 91社区在线高清| 久久久久伊人| 五月精品视频| 国产高清精品网站| 日本精品在线中文字幕| 久久九九热re6这里有精品 | 亚洲天堂第一区| 白天操夜夜操| 91精品久久久久久粉嫩| 国产aⅴ精品一区二区四区| 91偷拍一区二区三区精品| 毛片基地黄久久久久久天堂| 国产精品久久久久毛片软件| 欧美日韩成人在线一区| 蜜臀久久99精品久久久无需会员 | 国产嫩草一区二区三区在线观看| 国产a级黄色大片| av超碰在线| а√在线中文在线新版| 亚洲日产av中文字幕| 日韩和欧美一区二区三区| 中文字幕免费不卡在线| 欧美乱妇23p| 色综合久久88色综合天天看泰| 成人羞羞视频免费| 国产素人在线观看| 久青青在线观看视频国产| 视频精品导航| 欧美精品自拍| 久久精品亚洲乱码伦伦中文| 欧美久久免费观看| 久久久之久亚州精品露出| 欧美激情视频一区二区三区| 综合网插菊花| av福利导福航大全在线| 欧美激情在线免费| 九九**精品视频免费播放| 午夜精品成人在线视频| 久久精品国产69国产精品亚洲| 国产三区精品| 黄网站免费入口| 成人爽a毛片免费啪啪| 欧美1区3d| 国产精品视频你懂的| 亚洲黄一区二区| 国产精品色午夜在线观看| 日韩在线观看a| 成人高清在线| 全国精品免费看| 国产一区二区三区国产| 在线免费观看不卡av| 欧美福利视频在线| 色女孩综合网| 精品一区二区三区影院在线午夜| 亚洲人成精品久久久久久| 精品一区电影国产| 99在线观看| 国产传媒一区二区| 天天干天天综合| а√在线天堂官网| 欧美三级特黄| 亚洲欧美日韩一区二区三区在线观看| 一本色道久久综合狠狠躁篇的优点| 国产精品乱码视频| 亚洲看片网站| 最近中文字幕在线| 久久wwww| 国产麻豆精品在线观看| 欧美色综合影院| 国产成人欧美在线观看| 欧美 日韩 亚洲 一区| 欧美6一10sex性hd| 欧美久久九九| 亚洲综合色区另类av| 欧美日韩成人免费| 欧美做暖暖视频| 最爽无遮挡行房视频在线| 天天射综合网视频| 自拍偷拍国产精品| 久久亚洲精品国产亚洲老地址| 日韩精品成人一区二区在线观看| 天堂av电影在线观看| 亚洲成a人片77777在线播放| 91久色porny| 亚洲日韩中文字幕| 亚洲不卡1区| 免费成人黄色| 欧美日韩爆操| 婷婷国产在线综合| 日韩免费不卡av| 色片在线免费观看| 韩国三级大全久久网站| 成人免费毛片嘿嘿连载视频| 亚洲国产小视频| 日韩高清av电影| 日本高清视频在线观看| 欧美日本一区二区高清播放视频| 天天综合日日夜夜精品| 热99在线视频| 成人图片小说| 乱中年女人伦av一区二区| 久久久三级国产网站| 中文字幕不卡在线视频极品| 中日韩在线视频| 欧美理论电影| 国产日韩一区| 欧美视频在线一区二区三区| 2022国产精品| 日本韩国精品一区二区| 欧美韩日一区| 精品国产乱码久久久久酒店 | 色综合天天综合| 国产日韩欧美在线观看| **毛片在线网站| 男男gay无套免费视频欧美| 自拍偷自拍亚洲精品播放| 777国产偷窥盗摄精品视频| 欧美日韩一区二区三区69堂| 深夜福利一区二区三区| 国产午夜亚洲精品午夜鲁丝片| 日韩一区二区福利| 免费看毛片的网址| 国产福利91精品一区二区| 丁香一区二区三区| 日韩一区二区三区国产| 国产精品333| 欧美高清hd| 国产精品每日更新| 全亚洲最色的网站在线观看| 日韩男人天堂| 我不卡神马影院| 欧美无乱码久久久免费午夜一区| 久久久久久欧美精品色一二三四| 在线heyzo| 精品亚洲免费视频| 国产亚洲综合久久| 欧美 日本 亚洲| 国产亚洲精品美女久久| 亚洲男女一区二区三区| 91免费观看视频| 欧美制服丝袜第一页| 精品伦理一区二区三区| 色多多视频在线观看| 亚久久调教视频| 亚洲国产一区自拍| 国产精品8888| 精品视频在线观看免费观看| 国产精品少妇自拍| 国产精品久久99久久| 九色在线免费| 性xx色xx综合久久久xx| 日韩电影免费在线观看中文字幕| 国产成人一区二区三区别| 欧美午夜在线播放| 亚洲欧美日韩在线不卡| 亚洲综合国产精品| 91精品久久| 成人精品视频一区| 国模吧一区二区| 在线观看理论片| 宅男噜噜噜66国产日韩在线观看| 精品久久国产老人久久综合| 精品国产一区二区三区在线| 日韩国产一二三区| 亚洲免费资源在线播放| 99国产在线观看| 国产污视频在线播放| 久久日韩粉嫩一区二区三区| 国产精品久久不能| bt在线麻豆视频| caoporn国产一区二区|