




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第6章服務器端開發(fā)——動態(tài)頁面技術基礎教學目標教學重點教學過程第2頁教學目標了解動態(tài)主頁的基本特點掌握.NET動態(tài)主頁的基本開發(fā)方法了解Python網(wǎng)站開發(fā)技術了解Node.JS技術基礎了解不同動態(tài)主頁開發(fā)技術的異同第3頁教學重點.NET動態(tài)頁面的基本開發(fā)方法Python開發(fā)技術Node.JS技術基礎不同開發(fā)技術的差異第4頁教學過程動態(tài)主頁基本原理.NET技術Java技術Python技術Node.JS技術更多服務器端開發(fā)技術及其比較第5頁6.1動態(tài)主頁基本原理
靜態(tài)頁面:網(wǎng)頁內容在設計時就確定了,如要修改或維護,必須修改源代碼活動頁面:在靜態(tài)頁面的基礎上,加入控制客戶端顯示方式的元素,在客戶端改變網(wǎng)頁的內容和樣式動態(tài)頁面:網(wǎng)頁內容從服務器提取,數(shù)據(jù)可隨時更新,頁面內容實時生成,并具有交互性第6頁6.1
動態(tài)主頁基本原理
動態(tài)”的“動”指的是“交互性”,就是網(wǎng)頁能否根據(jù)情況顯示出個性化的內容客戶端動態(tài)網(wǎng)頁通過附加到瀏覽器上的模塊(插件)完成動態(tài)網(wǎng)頁的全部工作,但存在一定缺陷服務器端動態(tài)網(wǎng)頁由客戶端提出執(zhí)行請求,在服務器端運行,運行的結果通過HTML的形式傳回客戶端
PHP、CGI、JSP、ASP.NET和Node.JS等第7頁6.2.NET技術微軟總裁兼首席執(zhí)行官SteveBallmer給.NET下的定義為:“.NET代表一個集合,一個環(huán)境,一個可以作為平臺支持下一代Internet的可編程結構?!奔矗?NET=新平臺+標準協(xié)議+統(tǒng)一開發(fā)工具.NET致力將手機,瀏覽器和門戶應用程序集成到一起,形成一個統(tǒng)一的開發(fā)環(huán)境
第8頁6.2.NET技術.NET的設計目標
第9頁6.2.NET技術.NETFramework具有兩個主要組件:公共語言運行庫和.NETFramework類庫。公共語言運行庫是.NETFramework的基礎.NET框架是一個多語言組件開發(fā)和執(zhí)行環(huán)境,他提供了一個跨語言的統(tǒng)一編程環(huán)境。.NET框架的設計目標是讓開發(fā)人員更容易地建立Web應用程序和Web服務,使得Internet上的各應用程序之間,可以使用Web服務進行溝通第10頁6.2.NET技術.NET框架結構
第11頁6.2.NET技術內部處理過程第12頁ASP.NET提供與現(xiàn)有ASP兼容的語法這包括支持可在.aspx文件內與HTML內容混合的<%%>代碼呈現(xiàn)塊這些代碼塊在網(wǎng)頁呈現(xiàn)時按由上而下的方式執(zhí)行6.2.NET技術第13頁一個簡單的實例實例6-1:使用ASP.NET表單提交及接收并顯示結果6.2.NET技術第14頁網(wǎng)站注冊和注冊功能的實現(xiàn)實例6-2:使用數(shù)據(jù)庫顯示數(shù)據(jù)6.2ASP及.NET技術第15頁網(wǎng)站注冊和注冊功能的實現(xiàn)實例6-3:用戶注冊功能的實現(xiàn)6.2ASP及.NET技術第16頁網(wǎng)站注冊和注冊功能的實現(xiàn)實例6-4:用戶登錄功能的實現(xiàn)6.2ASP及.NET技術第17頁6.3Java技術
Java不單定義了一種計算機語言,而且提供了一整套客戶機/服務器解決方案,在這個方案中,程序可以自動地下載到客戶端并執(zhí)行。第18頁6.3Java技術
Java不單定義了一種計算機語言,而且提供了一整套客戶機/服務器解決方案,在這個方案中,程序可以自動地下載到客戶端并執(zhí)行簡單性面向對象分布性健壯性安全性體系結構中立可移植性解釋執(zhí)行高性能多線程動態(tài)性第19頁6.3Java技術
Servlet:服務器端程序它從客戶端接收請求,執(zhí)行設定的操作后,最終將結果返回給客戶端客戶端(如Web瀏覽器)通過HTTP提出請求
Web服務器接收該請求并將其發(fā)給servlet,如果這個Servlet尚未被加載,Web服務器將把它加載到Java虛擬機并且執(zhí)行它Servlet將接收該HTTP請求并執(zhí)行某種處理Servlet將向Web服務器返回應答
Web服務器從Servlet收到的應答發(fā)送給客戶端實例6-5第20頁6.3Java技術
JSP提供了一種簡單而快速創(chuàng)建顯示動態(tài)生成內容Web頁面的方法具有簡單實用、移植性和規(guī)范性好的特點開發(fā)方式可直接使用JSPJSP+JavaBeans
JSP+JavaBeans+Servlet
實例6-6第21頁6.4Java技術
用JSP創(chuàng)建一個顯示不同顏色的文字的網(wǎng)頁<!DOCTYPEhtml><html><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>JSPtestHelloWorld!</title></head><body><%String[]colors={"red","green","blue","black","gray"};for(inti=0;i<5;i++){out.println("<h1><fontcolor="+colors[i]+">HelloWorld!Myfirstjsppage.</font></h1>");}%></body></html>第22頁6.3Java技術
J2EE建立在J2SE基礎上,為企業(yè)級應用提供完整、穩(wěn)定、安全和快速的Java平臺是一個標準而不是一個產品J2EE平臺提供的Web開發(fā)技術主要支持兩類軟件的開發(fā)和應用高級信息系統(tǒng)框架的Web應用服務器Web應用服務器上運行的Web應用Struts、Hibernate和SpringFramework是J2EE的開發(fā)框架,可大大加快開發(fā)速度第23頁6.4Python開發(fā)技術
PythonWeb應用開發(fā)框架DjangoFlaskTornadoWeb2pySanicBottlePyramidTurboGearsCherryPy第24頁6.4Python開發(fā)技術
PythonDjango的特點代碼模版化重用高內聚(封裝)規(guī)范可擴展可維護協(xié)作開發(fā)通用性第25頁6.4Python開發(fā)技術
例6-7:使用Django建立一個簡單網(wǎng)頁urls.pyfromdjango.contribimportadminfromdjango.urlsimportpathfromex6_10helloimporthello
urlpatterns=[path('admin/',admin.site.urls),path('hello/',hello),]hello.pyfromdjango.httpimportHttpResponsedefhello(request):returnHttpResponse("hello,thisisatestpage!")第26頁6.4Python開發(fā)技術
例6-8:使用服務器端資源建立一個動態(tài)網(wǎng)頁views.pyfromdjango.httpimportHttpResponsefromdjango.httpimportHttpResponseimporttimedefcurtime(request):returnHttpResponse("Currenttimeis:"+time.strftime('%Y-%m-%d%H:%M:%S'))urls.pyfromdjango.contribimportadminfromdjango.urlsimportpathfromex6_11.viewsimportcurtime
urlpatterns=[path('admin/',admin.site.urls),path('curtime/',curtime),]第27頁6.5Node.JS開發(fā)技術Node.JS的特點單線程事件驅動異步I/O適合IO密集型應用簡單的編程模型更好地支持全棧開發(fā)第28頁6.5Node.JS開發(fā)技術例6-9:使用Node.js構建簡單的Web服務器varhttp=require('http')
//導入httpvarapp=http.createServer(function(request,response){//返回服務器對象
response.write('<h1>Thisismytestsite!</h1>')
//向客戶端輸出內容
response.end()})app.listen(8000,function(){
//第一個參數(shù)監(jiān)聽端口,第二個參數(shù)回調函數(shù),看是否能正常啟動
console.log('serverstarted...')
//服務器啟動成功才會輸出})第29頁6.5Node.JS開發(fā)技術例6-10:利用Express構建靜態(tài)資源服務器constexpress=require('express')
//導入express模塊letapp=express()
//創(chuàng)建服務器
app.use(express.static('www'))
//托管靜態(tài)資源,指定www目錄為當前Web服務器根目錄
app.listen(8000,()=>{
//開啟服務器
console.log('ServerSarted...')})第30頁6.5Node.JS開發(fā)技術例6-11:利用MongoDB進行數(shù)據(jù)庫操作const{MongoClient}=require('mongodb')consturl="mongodb://:27017";constclient=newMongoClient(url);
asyncfunctionmain(){try{constdb=client.db("demo");//數(shù)據(jù)庫awaitclient.connect();console.log('ConneccttodatabaseOK!');
awaitdb.collection('inventory').insertOne({
item:'canvas',//插入數(shù)據(jù)qty:100,tags:['cotton'],size:{h:28,w:35.5,uom:'cm'}});console.log("insertok!");awaitdb.collection(‘inventory’).updateOne(//更新{item:'canvas'},{$set:{'size.uom':'mm',status:'P'},$currentDate:{lastModigied:true}});console.log("updateOK!");
awaitdb.collection('inventory').deleteMany({status:'P'}); //刪除數(shù)據(jù)console.log("deleteOK!");//錯誤處理
}catch(e){ console.error(e);}finally{awaitclient.close();}}main().catch(console.error);第31頁6.6更多服務器端開發(fā)技術及其比較CGICommonGatewayInterface(通用網(wǎng)關接口)通過環(huán)境變量、標準輸入輸出來傳遞參數(shù)可使用各種高級語言進行開發(fā)每次請求都會在系統(tǒng)中創(chuàng)建一個新的進程,效率較低使用復雜,不便掌握第32頁6.6更多服務器端開發(fā)技術及其比較CGI工作原理
第33頁ISAPI/NSAPI在服務器端第一次被執(zhí)行的時候即被調入內存,在本次請求結束后也不需退出執(zhí)行效率高且能保持跟數(shù)據(jù)庫之間的高效連
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學年高中生物 第三章 遺傳的分子基礎 第四節(jié) 遺傳信息的表達-RNA和蛋白質的合成教學實錄 浙科版必修2
- 2的乘法(教學設計)-2024-2025學年二年級上冊數(shù)學滬教版
- 某液態(tài)奶項目工程施工組織設計
- 2023三年級數(shù)學上冊 二 一位數(shù)乘兩位數(shù)、三位數(shù)的乘法第2課時 乘法的估算教學實錄 西師大版
- 2023-2024學年統(tǒng)編版語文八年級下冊第一單元教學設計
- 2024年高中化學 第四章 電化學基礎 第四節(jié) 金屬的電化學腐蝕與防護教學實錄 新人教版選修4
- 2024年五年級數(shù)學上冊 5 簡易方程2解簡易方程練習課教學實錄 新人教版
- 2023七年級數(shù)學下冊 第4章 相交線與平行線4.5 垂線第1課時 垂線教學實錄 (新版)湘教版
- 2024四年級語文下冊第二單元解讀及教學設計
- 2024年五年級語文上冊 第五單元 17 松鼠教學實錄 新人教版
- 直流屏功能原理與維護保養(yǎng)講稿1
- 蘇科版五年級下冊《勞動》全一冊全部課件(共11節(jié))
- GB/T 7588.2-2020電梯制造與安裝安全規(guī)范第2部分:電梯部件的設計原則、計算和檢驗
- GB/T 6145-2010錳銅、康銅精密電阻合金線、片及帶
- GB/T 41021-2021法庭科學DNA鑒定文書內容及格式
- 部編版二年級語文下冊第一單元口語交際一語文園地一課件
- 2023年陜西高職單招考試語文真題
- 石油焦生產工藝及設備解讀課件
- 近代早期的歐洲-人教版課件
- 高中彎道跑教案
- 肺炎-疑難病例討論課件
評論
0/150
提交評論