版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章JSP腳本和指令的使用2回顧JDBC是什么?主要作用是什么?JDBCAPI可以做什么?Statement接口有哪些常用的方法?PreparedStatement與Statement相比,具有什么優(yōu)勢(shì)?3本章目標(biāo)掌握J(rèn)SP頁(yè)面7大組成元素掌握J(rèn)SP頁(yè)面的執(zhí)行過程掌握page令指、include指令的常用屬性掌握J(rèn)SP三種腳本元素的用法4為何需要JSPJSP工作流程5<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%@pageimport="java.text.SimpleDateFormat"%><html><head><title>動(dòng)態(tài)輸出服務(wù)器端當(dāng)前日期</title></head><body>hello呀!服務(wù)器端當(dāng)前日期是:
<%SimpleDateFormatsdf=newSimpleDateFormat("yyyy年MM月dd日");StringcurrentDate=sdf.format(newDate());%><%=currentDate%></body></html>為何需要JSP如何在網(wǎng)頁(yè)上動(dòng)態(tài)輸出服務(wù)器端當(dāng)前日期?運(yùn)行結(jié)果6JSP(JavaServerPages)是指:在HTML中嵌入Java腳本語(yǔ)言(內(nèi)嵌Java代碼)由應(yīng)用服務(wù)器中的JSP引擎來編譯和執(zhí)行嵌入的Java腳本語(yǔ)言命令然后將生成的整個(gè)頁(yè)面信息返回給客戶端JSP頁(yè)面Java腳本語(yǔ)言1234客戶端應(yīng)用服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器編譯、執(zhí)行嵌入返回頁(yè)面信息7JSP頁(yè)面的7大元素靜態(tài)內(nèi)容指令表達(dá)式小腳本<%Java代碼%><%=Java表達(dá)式%>HTML靜態(tài)文本以“<%@”開始,以“%>”結(jié)束。比如:<%@includefile="
Filename"%>聲明
標(biāo)準(zhǔn)動(dòng)作<%!方法%>以“<jsp:動(dòng)作名>”開始,以“</jsp:動(dòng)作名>”結(jié)束比如:<jsp:includepage="Filename"/>注釋<!--這是注釋,但客戶端可以查看到--><%--這也是注釋,但客戶端不能查看到--%>8<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%@pageimport="java.text.SimpleDateFormat"%><html><head><title>動(dòng)態(tài)輸出服務(wù)器端當(dāng)前日期</title></head><!--這是客戶端查看源代碼能夠看到的注釋,叫做HTML注釋--><%--這是客戶端查看源代碼看不到的注釋,叫做JSP注釋--%><body>hello呀!服務(wù)器端當(dāng)前日期是:
<%SimpleDateFormatsdf=newSimpleDateFormat("yyyy年MM月dd日");StringcurrentDate=sdf.format(newDate());%><%=currentDate%></body></html>指令靜態(tài)內(nèi)容小腳本表達(dá)式注釋JSP頁(yè)面的構(gòu)成元素9在瀏覽器上觀看運(yùn)行結(jié)果查看網(wǎng)頁(yè)源文件通過源代碼查看到HTML注釋的內(nèi)容所有注釋內(nèi)容都不可見JSP頁(yè)面的構(gòu)成元素10兩種類型的注釋:HTML的注釋方法:<!--html注釋-->JSP注釋標(biāo)記:<%--JSP注釋--%>缺點(diǎn):不安全,加大網(wǎng)絡(luò)傳輸負(fù)擔(dān)JSP頁(yè)面的構(gòu)成元素11開發(fā)JSP應(yīng)用創(chuàng)建Web項(xiàng)目開發(fā)步驟設(shè)計(jì)Web應(yīng)用的目錄結(jié)構(gòu)編寫代碼
(創(chuàng)建JSP)
部署、運(yùn)行本章將從這里開始,帶領(lǐng)大家創(chuàng)建小型電影DVD在線銷售系統(tǒng)的JSP頁(yè)面請(qǐng)說明開發(fā)Web應(yīng)用的幾個(gè)步驟12設(shè)計(jì)Web項(xiàng)目的目錄結(jié)構(gòu):創(chuàng)建目錄jsp:存放JSP頁(yè)面創(chuàng)建目錄CSS:存放樣式表文件創(chuàng)建目錄images:存放圖片開發(fā)JSP應(yīng)用13有中文,必須把字符集設(shè)置正確,頭部加上如下代碼:<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>或者<%@pagelanguage="java"import="java.util.*"contentType="text/html;charset=UTF-8"%>14如何設(shè)置歡迎頁(yè)面歡迎頁(yè)面,就是web應(yīng)用的默認(rèn)訪問頁(yè)面在配置文件web.xml中設(shè)置歡迎頁(yè)面<web-app><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>輸入http://localhost:8080/movies,web容器默認(rèn)調(diào)用index.jsp15JSP頁(yè)面3執(zhí)行2轉(zhuǎn)譯編譯1Servlet請(qǐng)求響應(yīng)JSP執(zhí)行過程客戶端應(yīng)用服務(wù)器.java.classServlet代碼編譯后的字節(jié)碼文件JSP的執(zhí)行過程JSP文件執(zhí)行過程的三個(gè)關(guān)鍵階段16第一次請(qǐng)求后,生成的字節(jié)碼文件可重用注意:對(duì)JSP文件進(jìn)行了修改,重新轉(zhuǎn)譯和編譯為什么JSP頁(yè)面在第一次請(qǐng)求時(shí)比較慢?JSP的執(zhí)行過程.class第二次請(qǐng)求響應(yīng)客戶端應(yīng)用服務(wù)器執(zhí)行17為什么需要page指令在Java文件中,兩種方式引入類:使用import關(guān)鍵字使用完全限定的類名Java中,如何引入其它包中的類?JSP中,使用page指令的import屬性引入Java類文件。提問18<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%@page
import="java.text.SimpleDateFormat"
%><html><head><title>動(dòng)態(tài)輸出服務(wù)器端當(dāng)前日期</title></head><body>hello呀!服務(wù)器端當(dāng)前日期是:
<%SimpleDateFormatsdf=newSimpleDateFormat("yyyy年MM月dd日");StringcurrentDate=sdf.format(newDate());%><%=currentDate%></body></html>page指令示例page指令引入這個(gè)類了19什么是page指令page指令設(shè)置多個(gè)屬性來定義整個(gè)頁(yè)面的屬性語(yǔ)法:<%@page屬性1="屬性值1"…屬性n="屬性值n"%>屬性描述默認(rèn)值language指定JSP頁(yè)面使用的腳本語(yǔ)言javaimport通過該屬性來引用腳本語(yǔ)言中使用到的類文件無contentType用來指定響應(yīng)的HTTP內(nèi)容類型和JSP頁(yè)面響應(yīng)時(shí)的字符編碼方式text/html,ISO-8859-1pageEncoding用來指定JSP頁(yè)面所采用的編碼方式ISO-8859-120為什么需要include指令當(dāng)所有頁(yè)面的某些部分都相同時(shí),如何簡(jiǎn)化和重用?提問把重復(fù)的部分做成單獨(dú)的頁(yè)面,如top.jsp、left.jsp、bottom.jsp等等。屬于靜態(tài)插入,將當(dāng)前頁(yè)面和插入部分合并成一個(gè)新的JSP頁(yè)面。21<%@pagelanguage="java"pageEncoding="UTF-8"%><%@include
file="/jsp/top.jsp"%><html><head><title>include指令</title></head>
<body><br><h2align=“center”>你好!歡迎你!</h2></body></html>include指令示例通過include指令把top.jsp的內(nèi)容嵌入進(jìn)來
include指令只支持file屬性,指定要在轉(zhuǎn)譯時(shí)嵌入的文件。22JSP腳本元素JSP腳本元素小腳本(Scriptlet
)表達(dá)式聲明JSP腳本元素嵌入Java代碼,主要用來實(shí)現(xiàn)頁(yè)面的動(dòng)態(tài)內(nèi)容JSP腳本元素包括:23什么是JSP表達(dá)式JSP腳本元素-表達(dá)式(Expression)用于向頁(yè)面輸出信息語(yǔ)法:<%=變量或方法或Java表達(dá)式%><html><%out.println(30*20);%></html><html><%=30*20%></html>使用表達(dá)式顯示數(shù)據(jù)。12使用小腳本顯示數(shù)據(jù)24JSP表達(dá)式練習(xí)在頁(yè)面中輸出PI的值,1000,999中最大的值、最小的值,1+2-3的值,1+2==3的值,1+2!=3的值。
提示:java.lang.Math類提供了靜態(tài)方法max、min,分別用來求得兩數(shù)相比的最大值、兩數(shù)相比的最小值
演示:規(guī)范代碼試一試25<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%@pageimport="java.text.SimpleDateFormat"%><html><head><title>動(dòng)態(tài)輸出服務(wù)器端當(dāng)前日期</title></head><body>hello呀!服務(wù)器端當(dāng)前日期是:
<%SimpleDateFormatsdf=newSimpleDateFormat("yyyy年MM月dd日");StringcurrentDate=sdf.format(newDate());out.println(currentDate);%></body></html>Scriptlet(小腳本)在JSP中嵌入的Java代碼JSP頁(yè)面里嵌入一段Java代碼語(yǔ)法:<%Java代碼%>26Scriptlet練習(xí)編寫JSP小腳本實(shí)現(xiàn)如圖所示的效果,使用循環(huán)動(dòng)態(tài)生成表格的行和列演示:規(guī)范代碼試一試JSP腳本元素-JSP聲明定義Java方法或變量<%!Java變量或方法
%>27<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%@pageimport="java.text.SimpleDateFormat"%><%!//聲明一個(gè)常量publicstaticfinalStringSEPARATOR=".";//將整數(shù)金額自動(dòng)轉(zhuǎn)換為帶兩位小數(shù)的金額publicStringconvertMoney(Stringmoney){intindex=money.indexOf(SEPARATOR);StringstrMoney=null;if(index==-1){strMoney=money+".00";}returnstrMoney;}
%>……………在JSP中定義了金額轉(zhuǎn)換的方法,可以在多處調(diào)用。演示:規(guī)范代碼28腳本元素綜合應(yīng)用使用Scriptlet和JSP表達(dá)式完成《DVD在線銷售系統(tǒng)》的電影分類功能:逐條逐行顯示電影分類名稱29可以分解為如下幾個(gè)步驟:1、設(shè)計(jì)數(shù)據(jù)表結(jié)構(gòu)2、確定存儲(chǔ)對(duì)象:表:電影分類(Type)屬性:分類ID、分類名稱3、通過JDBC訪問數(shù)據(jù)庫(kù)創(chuàng)建類TypeDAOImpl查詢數(shù)據(jù)庫(kù),并返回Type對(duì)象的集合4、編寫JSP輸出電影分類JSP腳本元素綜合應(yīng)用30第一步:設(shè)計(jì)數(shù)據(jù)表結(jié)構(gòu),表名為type字段含義字段名稱數(shù)據(jù)類型大小備注和說明電影分類IDtypeIDint主鍵(0動(dòng)作、1喜劇、2愛情、3科幻、4恐怖、5劇情、6冒險(xiǎn)、7音樂、8驚險(xiǎn)、9傳記、10歷史、11其他)電影分類名稱typeNamevarchar20非空J(rèn)SP腳本元素綜合應(yīng)用31第二步:確定存儲(chǔ)對(duì)象1、創(chuàng)建類:Type(電影分類)2、包含屬性:電影分類ID、電影分類名稱JSP腳本元素綜合應(yīng)用package.systop.jspt04.entity;publicclassType{privateinttypeID;//電影分類IDprivateStringtypeName;//電影分類名稱
//屬性的getter、setter方法
……………}32第三步:通過JDBC訪問數(shù)據(jù)庫(kù)創(chuàng)建類:TypeDAOImpl編寫search方法:用來查詢數(shù)據(jù)庫(kù),并返回所有的電影分類JSP腳本元素綜合應(yīng)用33第四步:編寫showMoviesType.jsp調(diào)用TypeDAOImpl的方法search(),獲得電影分類集合遍歷該集合,使用JSP表達(dá)式輸出代碼片斷<%TypeDAOtypeDAO=newTypeDAOImpl;Listlist=typeDAO.search();//查詢電影分類列表
//循環(huán)遍歷電影分類列表
for(inti=0;i<list.size();i++){Typetype=(Type)list.get(i);%>
<imgsrc="images/arr.gif">
<ahref="#"class="menu">
<%=type.getTypeName()%>
</a><br><br>
<%
}%>表達(dá)式,輸出分類的名稱小腳本,負(fù)責(zé)方法調(diào)用、以及在循環(huán)中獲取數(shù)據(jù)JSP腳本元素綜合應(yīng)用34第五步:在首頁(yè)嵌入
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)吧包月上網(wǎng)合同樣本
- 動(dòng)力電池訂購(gòu)合同格式
- 加氣塊產(chǎn)品供應(yīng)商協(xié)議
- 管道配件采購(gòu)合同范本
- 自來水管道安裝工程合同模板
- 牛犢選購(gòu)協(xié)議范例
- 臨時(shí)電力服務(wù)招標(biāo)文件
- 商業(yè)貸款合同保證條款
- 股權(quán)轉(zhuǎn)讓協(xié)議涉及的法律法規(guī)
- 信用卡借款協(xié)議范本
- 6標(biāo)七局石家莊地鐵一號(hào)線出入口鋼結(jié)構(gòu)施工方案
- 第八講 發(fā)展全過程人民民主PPT習(xí)概論2023優(yōu)化版教學(xué)課件
- 新時(shí)代大學(xué)生勞動(dòng)教育知到章節(jié)答案智慧樹2023年江西中醫(yī)藥大學(xué)
- 學(xué)前兒童表征的發(fā)展
- 2023年中國(guó)人保財(cái)險(xiǎn)招聘筆試參考題庫(kù)附帶答案詳解
- 北斗創(chuàng)新設(shè)計(jì)導(dǎo)航知到章節(jié)答案智慧樹2023年山東大學(xué)
- 中國(guó)急性缺血性腦卒中診治指南76555
- 江西省新定額(土建)定額說明及解釋
- 2023屆安徽省A10聯(lián)盟高三開學(xué)考試作文“量化生活”導(dǎo)寫及范文
- GB/T 5455-2014紡織品燃燒性能垂直方向損毀長(zhǎng)度、陰燃和續(xù)燃時(shí)間的測(cè)定
- GB/T 20831-2007電工鋼片(帶)層間絕緣涂層溫度特性測(cè)試方法
評(píng)論
0/150
提交評(píng)論