- 從零開(kāi)始學(xué)Java Web開(kāi)發(fā)
- 孫更新等編著
- 514字
- 2018-12-27 13:06:04
4.2 JSP頁(yè)面的基本結(jié)構(gòu)
JSP頁(yè)面是在由HTML創(chuàng)建的傳統(tǒng)的靜態(tài)網(wǎng)頁(yè)文件中加入Java程序片斷(Scriptlet)以及JSP標(biāo)記構(gòu)建而成的。因此,可以將JSP頁(yè)面中的代碼籠統(tǒng)地分為靜態(tài)代碼和動(dòng)態(tài)代碼,需要JSP服務(wù)器編譯的稱(chēng)為動(dòng)態(tài)代碼,不需要編譯的則稱(chēng)為靜態(tài)代碼。
【實(shí)例4-1】典型的JSP頁(yè)面。該頁(yè)面用來(lái)顯示瀏覽器和服務(wù)器的時(shí)間。
01 <%@ page language="java" contentType="text/html;charset=GBK"%> 02 <%@ page import="java.util.*"%> 03 <!-- 一個(gè)完整的JSP程序 --> 04 <html> 05 <head> 06 <title>一個(gè)典型的JSP頁(yè)面</title> 07 </head> 08 <SCRIPT LANGUAGE="JavaScript"> 09 //前臺(tái)腳本代碼(JavaScript)顯示當(dāng)前系統(tǒng)時(shí)間 10 var dnow = new Date(); 11 dhours = dnow.getHours(); 12 dminutes = dnow.getMinutes(); 13 dseconds = dnow.getSeconds(); 14 document.write("<br>瀏覽器時(shí)間:" + dhours + ":" + dminutes + ":" + dseconds); 15 </SCRIPT> 16 <% 17 //后臺(tái)腳本代碼(JSP)顯示當(dāng)前系統(tǒng)時(shí)間 18 Date dnow=new Date(); 19 int dhours=dnow.getHours(); 20 int dminutes=dnow.getMinutes(); 21 int dseconds=dnow.getSeconds(); 22 out.print("服務(wù)器時(shí)間:" + dhours + ":" + dminutes + ":" + dseconds); 23 %> 24 </html>
【代碼說(shuō)明】在實(shí)例4-1定義的頁(yè)面中,第1~2行是JSP中的編譯指令,屬于動(dòng)態(tài)代碼。第1行的代碼設(shè)置了頁(yè)面返回類(lèi)型和字符編碼,表示該JSP頁(yè)面輸出字符將按照GB2312編碼規(guī)范進(jìn)行顯示,第2行代碼在程序中引入了Java核心包util。第4~15行是靜態(tài)代碼,包括HTML代碼和JavaScript代碼。第16~23行是Java程序片斷,這也是屬于動(dòng)態(tài)代碼。從頁(yè)面的代碼結(jié)構(gòu)可以看到,JSP頁(yè)面中除了比普通的HTML頁(yè)面多一些Java代碼外,兩者大體上具有基本相同的結(jié)構(gòu)。
【運(yùn)行結(jié)果】該頁(yè)面運(yùn)行結(jié)果如圖4.30所示。

圖4.30 顯示瀏覽器和服務(wù)器的時(shí)間
說(shuō)明
該頁(yè)面利用動(dòng)態(tài)代碼(Java程序片斷)和靜態(tài)代碼(JavaScript)顯示當(dāng)前系統(tǒng)時(shí)間,其區(qū)別是靜態(tài)代碼不需要經(jīng)過(guò)編譯,但動(dòng)態(tài)代碼需要經(jīng)過(guò)引擎編譯后,向客戶端返回生成的HTML頁(yè)面。
- 過(guò)程控制工程及仿真
- Excel 2007函數(shù)與公式自學(xué)寶典
- JMAG電機(jī)電磁仿真分析與實(shí)例解析
- 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
- Ceph:Designing and Implementing Scalable Storage Systems
- 工業(yè)機(jī)器人運(yùn)動(dòng)仿真編程實(shí)踐:基于Android和OpenGL
- 從零開(kāi)始學(xué)C++
- 云計(jì)算和大數(shù)據(jù)的應(yīng)用
- 人工智能:智能人機(jī)交互
- 漢字錄入技能訓(xùn)練
- RealFlow流體制作經(jīng)典實(shí)例解析
- FreeCAD [How-to]
- 運(yùn)動(dòng)控制系統(tǒng)應(yīng)用及實(shí)例解析
- Mastering Windows Group Policy
- ASP.NET 4.0 MVC敏捷開(kāi)發(fā)給力起飛