Web復習ppt總結
WWW的特點
平臺無關分布性動態(tài)性交互性
客戶/服務器(Client/Server)結構
應用于計算機網絡環(huán)境下;分離客戶端和服務器端;
網絡上的客戶或服務器被稱作“節(jié)點”。
最基本的客戶/服務器結構只包含兩類節(jié)點:客戶和服務器,有時也被稱為
二層(two-tier)結構。
客戶/服務器(Client/Server)結構
優(yōu)點
極好的可維護性數(shù)據(jù)的安全性有保障數(shù)據(jù)的更新方便技術成熟
不同的客戶端只要滿足相關的協(xié)議標準,都可以訪問服務器
客戶/服務器(Client/Server)結構
缺點
會導致網絡交通擁塞系統(tǒng)缺少足夠的健壯性
瀏覽器/服務器(Browser/Server)結構
本質上仍是一種客戶/服務器結構?蛻舳送ㄟ^Web瀏覽器來實現(xiàn)的;
沒有或者只有極少部分業(yè)務邏輯在瀏覽器端實現(xiàn);主要的業(yè)務邏輯在服務器端實現(xiàn)。
瀏覽器/服務器(Browser/Server)結構
優(yōu)點
除瀏覽器外,不需要在客戶端安裝其他軟件;便于系統(tǒng)管理、維護和升級;
減輕客戶機負擔,降低對客戶機的性能要求。
瀏覽器/服務器(Browser/Server)結構
缺點
不便于錄入大量數(shù)據(jù);
構建復雜應用較困難,缺少成熟開發(fā)工具;HTTP可靠性低有可能造成應用故障;訪問量大時,服務器端負載過重;
嵌入客戶端頁面的腳本代碼易暴露業(yè)務規(guī)則。
HTML文檔基本結構文檔頭文檔體表格:
表頭1表頭2單元格1單元格2單元格3單元格4
表單與表單元素
表單
是網站與用戶進行信息交互的主要手段。表單至少應該包括:
說明性文字表單元素
提交和重置按鈕
表單元素
單行文本框、密碼框、單選按鈕、復選框、下拉列表、多行文本框、
普通按鈕、提交按鈕、重置按鈕和隱藏域
表單的工作原理
用戶在表單中填寫或選擇所需的數(shù)據(jù);用戶按下【提交】按鈕;
所填數(shù)據(jù)通過網絡傳遞給Web服務器;
服務器端的后臺應用程序獲取用戶提交的數(shù)據(jù);服務器端程序對數(shù)據(jù)進行處理;
服務器端程序將處理結果傳遞給客戶端。
定義表單
action:設定處理表單數(shù)據(jù)的程序的URL。
method:指定數(shù)據(jù)傳送到服務器的方式(get和post)。name:設定表單的名稱。
onrest和onsubmit:分別設定在按下相應按鈕之后要執(zhí)行的客戶端程序。target:指定數(shù)據(jù)結果顯示在哪個窗口。JavaScript語言
是一種腳本語言是基于對象的語言是事件驅動的語言是安全的語言是平臺無關的語言
3.1.2Servlet工作機制
①客戶端瀏覽器向web服務器發(fā)送請求;
②Servlet容器校驗該請求所對應的Servlet是否已載入(若還沒載入,Servlet容器就
將Servlet進行載入);
③web服務器將用戶的請求信息做為參數(shù)傳入相應的Servlet;④Servlet程序運行,生成運行結果并傳遞給web服務器;⑤web服務器將運行結果送回給客戶端瀏覽器。
當客戶端請求一個JSP頁面時,JSP容器會將客戶端的請求信息封裝在request對象中。請求信息的內容包括:請求的標頭信息(Header)、系統(tǒng)信息(如編碼方式等)、請求的方式(如GET、POST等)、cookies以及與請求相關的參數(shù)等。要得到這些參數(shù),可以使request對象的相關方法。
1、JavaBean簡介
通常而言,一個標準的JavaBean應該有以下幾項特性:
(1)JavaBean是一個公開的(Public)類;
(2)JavaBean類必須是擁有一個零參數(shù)的(默認)構造函數(shù);
(3)設置或獲取JavaBean屬性時,必須使用getXXX()方法或setXXX()方法。1、用JavaBea封裝數(shù)據(jù)庫訪問
加載驅動程序;
如:調用Class.forName()方法來載入一個JDBC驅動程序
建立數(shù)據(jù)庫連接;
我們可以通過DriverManager類的getConnection()方法來建立一個數(shù)據(jù)庫連接數(shù)據(jù)操作
與建立數(shù)據(jù)庫連接后,就可以利用這個連接對象的createStatement()方法來創(chuàng)建SQL語句對象Stat進行數(shù)據(jù)操作關閉數(shù)據(jù)庫
因為數(shù)據(jù)庫連接是系統(tǒng)寶貴資源,因此在數(shù)據(jù)庫操作完畢后應及時地釋放數(shù)據(jù)庫連接
使客戶端記住數(shù)據(jù)并將之返回到Web服務常用以下4種技術:
1.隱藏域2.URL重寫3.Cookie
4.Session對象8.1.1什么是設計模式
設計模式(Designpattern)是對于某些常見問題抽象提煉出來的解決方案。
軟件設計模式使人們可以更加簡單方便的復用以往成功的軟件設計經驗和
體系結構,將已經被證實為有效的軟件技術用設計模式進行表述也將會使新來的開發(fā)者更加容易理解其原來的設計思路,減少溝通成本和誤解。
8.1.2MVC設計模式(1)MVC設計思想MVC是把一個應用的輸入、處理、輸出流程按照模型、視圖、控制的方式進行分離,這樣應用被分為三個層:模型層、視圖層、控制層。
模型層(Model):負責表達和訪問商業(yè)數(shù)據(jù),執(zhí)行業(yè)務邏輯和操作。視圖層(View):把表示模型數(shù)據(jù)及邏輯關系和狀態(tài)的信息及特定形式展示
給用戶。
控制層(Control):定義了抽象的業(yè)務邏輯,用于控制業(yè)務流程。
8.3.1什么是Struts
Struts是一個基于MVC設計模式的web應用程序的開發(fā)框架,是由著名的
開源軟件組織Apache提供的,而且Struts本身是開放源代碼的。它實現(xiàn)了MVC架構,目前在電子商務系統(tǒng)的開發(fā)中得到廣泛的應用。
作為一種比較成熟的Web應用開發(fā)框架,Struts主要提供了三種重要的組
件:
①請求處理器(RequestHandler)②響應處理器(ResponseHandler)③標記庫(TagLibrary)
Struts框架的基本構成
控制器(Controller):在Struts中控制器的功能由ActionServlet和
ActionMapping對象構成。ActionServlet包括一組基于配置的ActionMapping對象,每個ActionMapping對象實現(xiàn)了一個請求到一個具體的模型對象之間的映射。模型(Model):Struts為模型部分提供了Action和ActionForm兩類對象。視圖(View):Struts應用中的視圖部分是通過JSP技術實現(xiàn)的。Struts提
供了自定義的標記庫以供使用,通過這些自定義標記可以非常好地和系統(tǒng)的模型部分交互。
8.3.2Struts主要的模型組件
ActionFormBean系統(tǒng)狀態(tài)Bean業(yè)務邏輯Bean
8.3.4Struts的控制器組件
在Struts框架中,一個Servlet被用于將客戶端的請求URI映射到一個完成
具體操作的Action類。
對于開發(fā)人員來說,與控制器有關的主要開發(fā)任務包括:
編寫ActionForm類;為每一個客戶端請求編寫Action類;
在配置文件struts-config.xml中為每一個請求配置ActionMapping。
8.3.5標記庫簡介
Struts的標記庫(Taglib)提供了一系列JSP自定義標記,用于幫助開發(fā)人
員創(chuàng)建基于表單的、交互式的Web應用。
在電子商務系統(tǒng)的開發(fā)中,Struts標記庫的重要性體現(xiàn)在:
能夠提供比普通的HTML表單標記更加強大的表單功能。
能夠消除在JSP頁面中出現(xiàn)的Java代碼,降低頁面開發(fā)難度。與Struts框架緊密結合,能夠充分利用Struts框架的優(yōu)勢和特點。
Struts標記庫中包含了4類基本的標記:Bean、HTML、Logic和Nested。Bean用于在JSP頁面中定義、管理Bean。HTML用于在頁面中創(chuàng)建輸入表單以及其他有用的HTML標記。Logic用于在頁面中控制流程,如條件判斷、循環(huán)等。Nested
擴展了基本的Struts標記,并允許它們嵌套使用。
擴展閱讀:Web編程總復習總結
Web編程
1.HTML標記:在HTML語言中,所有的標記都必須用尖括號(即小于號“”)括起來。如:、、等。大部分標記都是成對出現(xiàn)的,包括開始標記和結束標記,開始標記和相應的結束標記定義了標記所影響的范圍;結束標記與開始標記名稱相同,但結束標記總是以一個斜線符號開頭的,例如:和、和等。也有一些標記只要求單一標記符號,如換行標記就是這樣。
2.標記符的屬性:大多數(shù)標記都有一個屬性集,通過這些屬性可以對作用的內容進行更多的控制。在HTML語言中,所有屬性都放在開始標記的尖括號內,例如,使用FONT標記設置文本格式時,可以使用FACE屬性來定所用的字體,使用SIZE屬性來指定所用的字號。如下一段HTML代碼:心想事成。
3.HEAD頭元素用于定義網頁文檔的頭部,它是所有頭部元素的容器,主要包括:Description,網頁的描述信息;Keywords,關鍵字;Content_type,該網頁的標碼格式;Author,該網頁的作者;Refresh,用來設置網頁的自動更新。如下例:HTML網頁框架
CONTENT="Text/html;charset=gb2312">
我的第一頁面
4.HTML的常用標記:HTML的常用標記有一些共同點:都放在BODY標記里面。常用的標記有字體標記、圖片標記、超級鏈接、列表、表格和表單等。5.字體標記格式:xx
6.圖片標記格式:
7.超級鏈接標記格式:XX8.列表標記格式:有序列表xx無序列表xx
9.基本表格:是表格的基本標記,代表表格的行,代表表格的列。
10.表單的基本使用方法:用戶名:_______密碼:_________提交
重寫
對應下列代碼:
用戶名:密碼:
11.在網頁中引入JavaScript:
Document.write("這是以JavaScript輸出的!")
最終在HTML格式文件中打開時顯示的是:這是以JavaScript輸出的!12.變量和數(shù)組是JavaScript的基礎,不管是在JavaScript中還是在其他程序語言中,最基本的概念是變量。JavaScript定義變量只有一個關鍵字"var",在JavaScript中定義一個用戶名變量的語法為:"varstrUserName;",如下案例:
VarstrWelcome="歡迎您!";
VariCounter=10;iCounter=iCounter+1;
document.write(strWelcome);document.write(iCounter);
最終在HTML文件中顯示的是:歡迎您!
1113.HTML語言不區(qū)分大小寫,但是JavaScript是區(qū)分大小寫的,在JavaScript中,變量名大小寫是有所區(qū)別的,例如:變量s12和S12是不同的兩個變量。14.聲明數(shù)組:用new和Array關鍵字,new代表建立一個新的對象,Array是JavaScript內置的一個對象,由于JavaScript區(qū)分大小寫,所以Array的首字母必須是大寫。
15.JavaScript提供的語句可以分為4類:(1)條件和分支語句:Ifelse語句,switch語句。(2)循環(huán)語句:for語句,dowhile語句,break語句和continue語句。(3)對象操作語句:new,this和with。(4)注釋語句:"http://"或"/**/"。16.If語句:
variHour=13;
If(iHour
Document.write(val);
最終在HTML文件中顯示的結果為:五
18.循環(huán)語句包括:for語句、while語句,循環(huán)控制轉移語句continue和break語句。
for語句的基本語法為:
for(初始化部分;條件部分;更新部分){語句塊;}
案例:
variSum=0;
for(vari=0;i
}document.write(iSum);
20.break語句(案例):
for(i=1;i
22.JavaScript函數(shù):函數(shù)在定義時并沒有被執(zhí)行,只有函數(shù)被調用時,其中的代碼才真正被執(zhí)行。為實現(xiàn)函數(shù)的定義和調用,JavaScript語句提供了兩個關鍵字:function和return。JavaScript函數(shù)基本語法格式為:
function函數(shù)名(參數(shù)表){語句塊;}
23.函數(shù)定義和調用(案例):
functiongetSqrt(iNum){variTemp=iNum*iNum;document.write(iTemp);}
getSqrt(8);
24.函數(shù)的返回值(案例):
functionf(y){varx=y*y;returnx;}
for(x=0;x
上海廣州
Functionfunc(){
alert("你選擇了"+selAddr.value);}
28.forin語句(案例):
varvar=newArray(3);arr[0]="Jack";arr[1]="Mike";arr[2]="Rose";for(iinarr){
document.write("第"+i+"個為:"+arr[i]);}
注意:forin語句實現(xiàn)循環(huán),in后面跟一個對象,循環(huán)次數(shù)是該對象的所有元素的總和。
29.JavaScript內置對象:內置對象都有自己的方法和屬性,訪問屬性的語法是:"對象名.屬性名稱",訪問方法的語法是:"對象名.方法名(參數(shù)表)",所謂方法就
是一個普通函數(shù)被封裝到一個對象中。30.使用時間對象(案例):
varcurr=newDate();//聲明document.write("今天是");switch(curr.getDay()){//返回星期幾
case0:document.write("周日,休息!");break;case1:document.write("周一,需要工作!");break;case2:document.write("周二,需要工作!");break;case3:document.write("周三,需要工作!");break;case4:document.write("周四,需要工作!");break;case5:document.write("周五,需要工作!");break;case6:document.write("周六,休息了!");break;}
31.Math對象:Math對象的內置方法定義了各種數(shù)學運算,可以直接調用,如:Math.數(shù)學函數(shù)(參數(shù))
vara=Math.sin(1);document.write(a);
32.String對象:一般利用String對象提供的函數(shù)來處理字符串。String對字符串的處理主要提供了下列方法:
(1)charAt(idx):第一個字符位置是"0",返回指定位置處的字符。
(2)indexOf(Chr):返回指定子字符串的位置,從左到右,找不到返回-1。(3)lastIndexOf(chr):返回指定子字符串的位置,從右到左。找不到返回-1。(4)toLowerCase():將字符串中的字符全部轉化成小寫。(5)toUpperCase():將字符串中的字符全部轉化成大寫。案例:
varstr="Iamaboy,Ilikeprogramming!";a=str.charAt(7);b=str.indexOf("a");c=str.lastIndexOf("a");d=str.toUpperCase();document.write(a+"");document.write(b+"");document.write(c+"");document.write(d+"");
33.字符串掃描統(tǒng)計(案例:統(tǒng)計字符串"a"出現(xiàn)的次數(shù),然后將次數(shù)輸出到瀏覽器
上):
varstr="Iamagirl,Ilikecat";variCount=0;
for(i=0;i
就停止轉換,返回已有的結果。如果第一個字符不是數(shù)字,parseInt()就返回"NaN"值。parseFloat()函數(shù)和parseInt()函數(shù)相似,區(qū)別是parseFloat()函數(shù)可以提取小數(shù)。
案例:
vara=parseInt("123China");varb=parseFloat("123.12China");document.write(a+"");document.write(b);
37.正則表達式:就是用一個"字符串"來描述一個特征,然后去驗證另一個"字符串"是否符合這個特征。比如表達式"ab+"描述的特征是一個"a"和任意個"b",那么"ab","abb","abbbbb"都符合這個特征。正則表達式可以用來:(1)驗證字符串是否符合指定特征,比如驗證是否是合法的郵件地址。(2)用來查找字符串,從一個長的文本中查找符合指定特征的字符串,比查找固定字符串更加靈活方便。(3)用來替換,比普通的替換更強大。
38.普通字符:字母、數(shù)字、漢字、下劃線、以及后邊章節(jié)中沒有特殊定義的標點符號,都是"普通字符"。表達式中的普通字符,在匹配一個字符串的時候,匹配與之相同的一個字符。
舉例1:表達式"c",在匹配字符串"abcde"時,匹配結果是:成功;匹配到的內容是:"c";匹配到的位置是:開始于2,結束于3。(注:下標從0開始還是從1開始,因當前編程語言的不同而可能不同)
舉例2:表達式"bcd",在匹配字符串"abcde"時,匹配結果是:成功;匹配到的內容是:"bcd";匹配到的位置是:開始于1,結束于4。
39.簡單的轉義字符:一些不便書寫的字符,采用在前面加"\\"的方法。這些字符其實我們都已經熟知了。表達式可匹配\\r,\\n\\t\\\\代表回車和換行符制表符代表"\\"本身舉例1:
\\.\\$\\^表達式可匹配匹配^符號本身匹配$符號本身匹配小數(shù)點(.)本身表達式"\\$d",在匹配字符串
"abc$de"時,匹配結果是:成功;匹配到的內容是:"$d";匹配到的位置是:開始于3,結束于5。
40.能夠與"多種字符"匹配的表達式:正則表達式中的一些表示方法,可以匹配"多種字符"其中的任意一個字符。比如,表達式"\\d"可以匹配任意一個數(shù)字。雖然可以匹配其中任意字符,但是只能是一個,不是多個。這就好比玩撲克牌時候,大小王可以代替任意一張牌,但是只能代替一張牌。表達式可匹配\\d任意一個數(shù)字,0~9中的任意一個任意一個字母或數(shù)字或下劃線,也就是A~Z,a~z,0~9,_中任意一15
\\w個\\s包括空格、制表符、換頁符等空白字符的其中任意一個小數(shù)點可以匹配除了換行符(\\n)以外的任意一個字符.舉例1:表達式"\\d\\d",在匹配"abc123"時,匹配的結果是:成功;匹配到的內容是:"12";匹配到的位置是:開始于3,結束于5。
舉例2:表達式"a.\\d",在匹配"aaa100"時,匹配的結果是:成功;匹配到的內容是:"aa1";匹配到的位置是:開始于1,結束于4。
41.自定義能夠匹配"多種字符"的表達式:使用方括號[]包含一系列字符,能夠匹配其中任意一個字符。用[^]包含一系列字符,則能夠匹配其中字符之外的任意一個字符。同樣的道理,雖然可以匹配其中任意一個,但是只能是一個,不是多個。
表達式可匹配[ab5@]匹配"a"或"b"或"5"或"@"匹配"a","b","c"之外的任意一個字符匹配"f"~"k"之間的任意一個字母[^abc][f-k][^A-F0-匹配3]"A"~"F","0"~"3"之外的任意一個字符舉例1:表達式"[bcd][bcd]"匹配"abc123"時,匹配的結果是:成功;匹配到的內容是:"bc";匹配到的位置是:開始于1,結束于3。
舉例2:表達式"[^abc]"匹配"abc123"時,匹配的結果是:成功;匹配到的內容是:"1";匹配到的位置是:開始于3,結束于4。
42.修飾匹配次數(shù)的特殊符號:如果使用表達式再加上修飾匹配次數(shù)的特殊符號,那么不用重復書寫表達式就可以重復匹配。使用方法是:"次數(shù)修飾"放在"被修飾的表達式"后邊。比如:"[bcd][bcd]"可以寫成"[bcd]{2}"。表達式作用{n}表達式重復n次,比如:"\\w{2}"相當于"\\w\\w";"a{5}"相當于"aaaaa"表達式至少重復m次,最多重復n次,比如:"ba{1,3}"可以匹配"ba"或"baa"或"baaa"表達式至少重復m次,比如:"\\w\\d{2,}"可以匹配"a12","_456","M12344"...匹配表達式0次或者1次,相當于{0,1},比如:"a[cd]?"可以匹配"a","ac","ad"表達式至少出現(xiàn)1次,相當于{1,},比如:"a+b"可以匹配"ab","aab","aaab"...表達式不出現(xiàn)或出現(xiàn)任意次,相當于{0,},{m,n}{m,}?+*比如:"\\^*b"可以匹配"b","^^^b"...舉例1:表達式"\\d+\\.?\\d*"在匹配"Itcosts$12.5"時,匹配的結果是:成功;匹配到的內容是:"12.5";匹配到的位置是:開始于10,結束于14。
舉例2:表達式"go{2,8}gle"在匹配"Adsbygoooooogle"時,匹配的結果是:成功;匹配到的內容是:"goooooogle";匹配到的位置是:開始于7,結束于17。
43.其他一些代表抽象意義的特殊符號:表達式作用^與字符串開始的地方匹配,不匹配任何字符與字符串結束的地方匹配,不匹配任何字符匹配一個單詞邊界,也就是單詞和空格之間的位置,不匹配任何字符$\\b舉例1:表達式"^aaa"在匹配"xxxaaaxxx"時,匹配結果是:失敗。因為"^"要求與字符串開始的地方匹配,因此,只有當"aaa"位于字符串的開頭的時候,"^aaa"才能匹配,比如:"aaaxxxxxx"。
舉例2:表達式"aaa$"在匹配"xxxaaaxxx"時,匹配結果是:失敗。因為"$"要求與字符串結束的地方匹配,因此,只有當"aaa"位于字符串的結尾的時候,"aaa$"才能匹配,比如:"xxxxxxaaa"。
舉例3:表達式".\\b."在匹配"@@@abc"時,匹配結果是:成功;匹配到的內容是:"@a";匹配到的位置是:開始于2,結束于4。
進一步說明:"\\b"與"^"和"$"類似,本身不匹配任何字符,但是它要求它在匹配結果中所處位置的左右兩邊,其中一邊是"\\w"范圍,另一邊是非"\\w"的范圍。
舉例4:表達式"\\bend\\b"在匹配"weekend,endfor,end"時,匹配結果是:成功;匹配到的內容是:"end";匹配到的位置是:開始于15,結束于18。44.一些符號可以影響表達式內部的子表達式之間的關系:表達式作用|左右兩邊表達式之間"或"關系,匹配左邊或者右邊(1).在被修飾匹配次數(shù)的時候,括號()中的表達式可以作為整體被修飾(2).取匹配結果的時候,括號中的表達式匹配到的內容可以被單獨得到舉例5:表達式"Tom|Jack"在匹配字符串"I"mTom,heisJack"時,匹配結果是:成功;匹配到的內容是:"Tom";匹配到的位置是:開始于4,結束于7。匹配下一個時,匹配結果是:成功;匹配到的內容是:"Jack";匹配到的位置時:開始于15,結束于19。
舉例6:表達式"(go\\s*)+"在匹配"Let"sgogogo!"時,匹配結果是:成功;匹配到內容是:"gogogo";匹配到的位置是:開始于6,結束于14。舉例7:表達式"¥(\\d+\\.?\\d*)"在匹配"$10.9,¥20.5"時,匹配的結果是:成功;匹配到的內容是:"¥20.5";匹配到的位置是:開始于6,結束于10。單獨獲取括號范圍匹配到的內容是:"20.5"。
45.XML與HTML的主要差異:XML不是HTML的替代。
XML和HTML為不同的目的而設計:
XML被設計為傳輸和存儲數(shù)據(jù),其焦點是數(shù)據(jù)的內容。HTML被設計用來顯示數(shù)據(jù),其焦點是數(shù)據(jù)的外觀。HTML旨在顯示信息,而XML旨在傳輸信息。
46.XML文檔必須有根元素:XML文檔必須有一個元素是所有其他元素的父元素,該元素稱為根元素。
.....
XML文件的邏輯結構--XML元素的形式為:數(shù)據(jù)內容;元素中還可以再嵌套別的元素;
XML中開始和結束標記之間的文字稱作“字符數(shù)據(jù)”,而把標記內的標示文字稱作“標記”;
47.XML的屬性值須加引號:與HTML類似,XML也可擁有屬性(名稱/值的對),在XML中,XML的屬性值須加引號。GeorgeJohn
〈標記名(屬性名=“屬性取值”)*〉
48.實體引用:在XML中,一些字符擁有特殊的意義,如果把字符"
朱元璋朱重八男
造反皇帝
52.XML文件的邏輯結構--XML的整體結構:
[1][2][3][4]
[5]XML
[6]XML是一種可擴展的源標記語言,它可用以規(guī)定新的標記規(guī)則,并根據(jù)這個規(guī)則組織數(shù)據(jù)[7]
[8][9]
[11]張三
[12]zhang@aaa.com[13]
[14]]]>[15][16][17]
說明:XML文件最基本的構成有:XML聲明:[1]處理指示(可選):[1][2]XML元素:[3][17]
標記:e.g.[5]字符數(shù)據(jù):e.g.[5]“XML”CDATA:[9][14]注釋:[8]
友情提示:本文中關于《Web復習ppt總結》給出的范例僅供您參考拓展思維使用,Web復習ppt總結:該篇文章建議您自主創(chuàng)作。
來源:網絡整理 免責聲明:本文僅限學習分享,如產生版權問題,請聯(lián)系我們及時刪除。