什麼是JSP JSP屬於動態網頁,例如當上網搜索信息,程式就進行了查詢資料庫的操作,這就是一個動態網頁所實現的功能。HTML不具備查詢資料庫的能力,java代碼卻可以通過JDBC技術訪問資料庫。因此,可在HTML代碼中間混合java代碼,讓網頁擁有訪問資料庫的功能。嵌入了java代碼的網頁,就是JS ...
什麼是JSP
JSP屬於動態網頁,例如當上網搜索信息,程式就進行了查詢資料庫的操作,這就是一個動態網頁所實現的功能。HTML不具備查詢資料庫的能力,java代碼卻可以通過JDBC技術訪問資料庫。因此,可在HTML代碼中間混合java代碼,讓網頁擁有訪問資料庫的功能。嵌入了java代碼的網頁,就是JSP。
編寫JSP
其中,out是JSP九大內部對象之一,內部對象會在頁面載入伺服器的時候自動實例化。它的作用是輸出內容到頁面,管理伺服器緩衝區。
測試JSP
首先需要打開伺服器,然後部署項目到伺服器中。最後輸入網址進行測試,一共有三種方法:
1、http://localhost:8080/項目名/文件名.jsp
2、http://127.0.0.1:8080/項目名/文件名.jsp
3、http://本地IP:8080/項目名/文件名.jsp
在myeclipse這個編輯器中,一般修改了JSP頁面是不需要重新部署項目和重啟伺服器的,只需要刷新就可以。在瀏覽器上是無法查看JSP文件的java代碼,原因是java代碼是存放在伺服器中,實時生成HTML頁面,不像HTML是事先由用戶寫好放在伺服器上,由web伺服器向客戶端發送,因此說JSP是伺服器端動態頁面。
out.print和out.println的區別
前者向客戶端源代碼輸出,不換行;後者則換行。需要註意的是後者是表示在客戶端HTML源代碼中換行,並不是在頁面顯示會換行。在頁面上換行需要使用<br>,如:
JSP表達式
JSP表達式的作用是定義JSP的一些輸出,基本語法為:
<% =變數/返回值/表達式 %>
使用JSP表達式
使用表達式的效果就是向客戶端輸出內容,如:
JSP程式段
在JSP中表達式只能單行出現,而且僅僅把其中的運算結果輸出到客戶端。如果需要在JSP程式中既要輸出數據,也要實現定義變數等一系列複雜的邏輯操作,表達式是不能滿足要求的,這時候需要JSP程式段。實際上,JSP程式段就是插入到JSP程式的java代碼段。
編寫JSP程式段
混合JSP程式段、HTML和表達式
JSP中可以放入HTML,也可以放入JSP程式段和JSP表達式,他們可以靈活地混合使用。
程式段中的變數作用範圍
在JSP程式段中,變數的定義和使用是有先後順序的,如下麵這段代碼會報錯:
在上面那個例子中,首先使用變數name和age,之後才定義他們。運行出現500錯誤,意思是指程式不能通過編譯,編譯失敗。因此變數msg在沒有定義之前是不允許被使用的。
什麼是JSP聲明
JSP聲明中可以定義網頁中的全局變數,這些變數在JSP頁面中的任何地方都能夠使用。在實際的應用中,方法、頁面全局變數甚至類的聲明都可以放在JSP聲明部分。之前得知在JSP程式段中定義的變數只能先聲明後使用,而JSP聲明中定義的變數是網頁級別的,系統會優先執行。也就是說使用JSP聲明可以在JSP的任何地方定義變數。
編寫JSP聲明
JSP聲明中還可以定義方法,如:
JSP聲明需要註意的問題
在JSP聲明中只能作定義,但不能實現控制邏輯,比如不能在其中使用out.print進行輸出操作: