軟件工程課程設計_第1頁
軟件工程課程設計_第2頁
軟件工程課程設計_第3頁
軟件工程課程設計_第4頁
軟件工程課程設計_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

軟件工程課程設計題目:網(wǎng)上購物系統(tǒng)專業(yè):計算機科學與技術班級:04計算機(4)班組員:孔兵兵:0412002426冷曉林:0412002419郭偉:0412002425諶小仲:0412002422李佩:0412002429目錄需求分析……….孔兵兵1.1編寫目的1.2開發(fā)背景1.3項目提出原因1.4系統(tǒng)設計目標1.5項目構想1.6系統(tǒng)功能1.7項目名稱1.8需求分析1.9所運用的知識點概要設計…………冷曉林2.1:購物系統(tǒng)的功能2.2:功能圖2.2.1:購物車流程圖2.2.2:定單處理流程圖2.2.3/:商品分類管理流程圖2.3:管理員實現(xiàn)的功能2.4:顧客實現(xiàn)的功能2.5:實現(xiàn)中的問題與難點詳細設計…………郭偉3.1:商品的信息3.2:商品的類別3.3:訂單3.5:訂單明細3.6:對概要設計中問題的解決方法編碼………..諶小仲測試………..李佩網(wǎng)上購物系統(tǒng)1網(wǎng)上購物系統(tǒng)需求分析說明1.1編寫目的本文檔是針對網(wǎng)上購物系統(tǒng)從總體設計、設備配置、設備配置等方面所做的說明。本文檔的編寫目的是:對網(wǎng)上購物系統(tǒng)的總體架構設計進行描述。對該系統(tǒng)的整個流程作詳細、準確的描述,為系統(tǒng)的概要設計及編碼提供指導。1.2開發(fā)背景隨著計算機和網(wǎng)絡的日趨普及,越來越多的商家在網(wǎng)上升起商店,向消費者展示出一片新鮮的購物大地。在美、日等信息化程度較高的國家和地區(qū),網(wǎng)絡商店發(fā)展速度迅猛,美國的世界級超一流的零售商,如沃爾瑪凱瑪特,家庭倉儲等紛紛臍身于網(wǎng)絡經(jīng)商的行列。調查表明:美國的家庭已越來越習慣于在家中從網(wǎng)上購物。在我國,網(wǎng)上購物從無到有也不過短短幾年時間。網(wǎng)上購物還不完善,結算方式的原始落后是網(wǎng)上購物致命的弱點。大部分商家結算只能采取“送貨上門、到貨付款”或“郵寄上門、貸款郵資先付”的方式。這樣不但浪費了時間和人力,而且限制了網(wǎng)絡的覆蓋范圍和商品的結構種類。因此,安全、快捷、方便的電子支付手段將是今后網(wǎng)上商店健康發(fā)展的主要要素。1.3項目提出原因為了對所學知識(軟件工程)做一個全面的考查,加深對軟件工程思想的理解和提高個人的實踐能力,趙嵐老師要求我們用所學的知識完成一個實際的項目(系統(tǒng))。1.4系統(tǒng)設計目標網(wǎng)上購物系統(tǒng)以解決客戶在網(wǎng)上進行電子交易的需求為出發(fā)點構思。因此在建立與消費者之間交流信息和進行電子交易方面在行業(yè)中具有示范作用,在系統(tǒng)總體規(guī)劃中,應把握先進性、安全性、可擴展性和集成性四項基本原則。(1)先進性原則設計方案立足先進技術。在服務器和網(wǎng)絡方面以優(yōu)化通信流量,提高系統(tǒng)的管理性和安全性為重點,盡量采用領先成熟的技術。(2)安全性原則網(wǎng)上購物系統(tǒng)要解決的安全問題包括非授權使用、非法入侵、服務失效、不可否認和交易信息泄漏。系統(tǒng)采用防火墻技術,隔離Internet,一方面可以防范公用網(wǎng)上非法用戶的訪問,另一方面可以防止中心的一些重要數(shù)據(jù)被不合法用戶所獲取。(3)可擴展性原則系統(tǒng)中所有功能均考慮到隨著應用的逐步完善和入網(wǎng)產(chǎn)品和消費者的逐漸增加,系統(tǒng)還能夠進行不斷擴展的要求。1.5項目構想為了方便地、完整地實現(xiàn)購物流程,本網(wǎng)站所需要的功能模塊主要包括前臺服務模塊和后臺管理模塊,兩大功能模塊又細分為若干子模塊,具體分析如下:模塊子模塊詳細劃分1.前臺服務模塊(1)會員注冊與登錄模塊=1\*GB3①用戶注冊=2\*GB3②用戶登錄驗證=3\*GB3③用戶資料修改(2)在線購物模塊=1\*GB3①商品瀏覽和搜索=2\*GB3②購物車管理=3\*GB3③定單生成和查詢、投訴(3)其他服務功能=1\*GB3①圖片廣告、友情鏈接=2\*GB3②購物幫助2.后臺管理模塊(1)商品及訂單管理模塊=1\*GB3①商品類別管理=2\*GB3②商品管理=3\*GB3③訂單管理(2)用戶管理模塊=1\*GB3①管理網(wǎng)站會員=2\*GB3②管理后臺管理員(3)其他管理模塊=1\*GB3①網(wǎng)站常規(guī)設置=2\*GB3②網(wǎng)站廣告設置=3\*GB3③友情鏈接管理1.6系統(tǒng)功能這是一個JSP開發(fā)的網(wǎng)上購物體系統(tǒng),后臺數(shù)據(jù)庫是SQLServer2000,該系統(tǒng)將主要完成以下兩個任務:(1)構建一個前臺服務模塊,通過會員注冊登錄、在線購物、站內新聞公告發(fā)布等功能模塊實現(xiàn)完整的網(wǎng)上購物流程并提供即時的購物信息服務。(2)構建一個后臺管理模塊,通過用戶信息管理、商品信息管理、交易信息管理、站內信息管理等子功能模塊實現(xiàn)對購物系統(tǒng)所有數(shù)據(jù)和信息的動態(tài)更新、管理和維護。1.7項目名稱網(wǎng)上購物系統(tǒng)1.8需求分析分析1購物系統(tǒng)(顧客需求與后臺管理人員的需求)顧客需求是查詢商品,個人購買情況及個人信息的修改顧客可根據(jù)自己的需求添加和刪除所購買的商品顧客可以通過本系統(tǒng)實現(xiàn)異地購物方便快捷。分析2管理員可以對用戶信息進行安全管理管理人員可對顧客,商品,訂單進行管理和維護,及系統(tǒng)狀況的查看商品數(shù)據(jù)具有較高的安全性和保性,可通過管理員進行添加與刪除修改與維護。分析3用戶角色分析一個真實的商店的商業(yè)行為參與者主要有3類,商店的擁有者、顧客和配送商。商家把自己的產(chǎn)品拿到商店里銷售。顧客是逛商場的人,即買家。配送商專門負責物流配送,幫助把顧客無法自己攜帶回家的商品送回家。網(wǎng)上購物系統(tǒng)的使用者類型與現(xiàn)實中的商店極為相似,網(wǎng)上與網(wǎng)下的對的對照見下表。商店種類真實商店網(wǎng)上購物系統(tǒng)參與者一商店擁有者網(wǎng)上商店參與者二顧客用戶參與者三配送商配送商1.9所運用的知識點a.數(shù)據(jù)庫(SQLServer2000)的運用b.JSP腳本和指令的使用。c.JSP隱式對象d.JavaBean和JSP中的標準標準動作及標準標簽庫。e.使用會話技術存儲用戶所購買的商品。f.使用過慮器強制登陸。2.概要設計2.1“網(wǎng)上購物”系統(tǒng)的管理員需要使用系統(tǒng)提供的如下功能:管理員登陸;管理商品;管理訂單;管理用戶;顧客需要使用系統(tǒng)提供的如下功能:用戶注冊;用戶的登陸;在線購物;下訂單;查看訂單信息2.2功能圖2.2.1購物車流程圖購物車模塊購物車模塊顯示商品列表是否購買商品輸入商品數(shù)量查看購物車商品是否前臺結帳前臺結帳確定訂單信息是否正確是否繼續(xù)購物是否清空購物車是否修改商品數(shù)量輸入商品數(shù)量是否正確是否刪除商品清空購物車修改商品數(shù)量刪除商品是是是是是是否否否否購物成功購物成功2.2.2定單處理流程圖2.2.3商品分類管理流程圖2.2.4所實現(xiàn)的功能功能1—管理員所實現(xiàn)的功能a.管理員登陸b.管理商品c管理定單d.管理用戶e.對商品進行增、刪、查、改f..對定單進行簡單的查閱g.對用戶資料的管理。功能2—顧客所實現(xiàn)的功能a.用戶注冊b.用戶登陸c.在線購物d.下定單e.查看定單信息2.2.5實現(xiàn)中的問題及難點問題1:當點擊購買商品時,怎么使購買商品數(shù)量增加。問題2:為了連接數(shù)據(jù)庫,在很jsp頁面中都會涉及到數(shù)據(jù)庫加裁,連接,這樣代碼重復,對整個系統(tǒng)的開銷很大,如何解決?問題3:用戶刪除定單時候,數(shù)據(jù)庫中的產(chǎn)品數(shù)量要同時增加相應的數(shù)量。問題4::在下定單時,數(shù)據(jù)庫中的產(chǎn)品數(shù)量要同時減少相應的數(shù)量。3.詳細設計3.1商品信息商品信息具有這些屬性:商品id號,商品名,商品類別id號,商品新舊程度,產(chǎn)地,內容介紹,價格,總數(shù)量,剩余數(shù)量,商品發(fā)布時間等。這些實體的詳細信息如下:管理員:管理員id號,管理員名,密碼。用戶:用戶id號,用戶名,密碼,姓名,id編號,郵編,地址,email,電話。3.2商品類別:商品類別名,商品描述。3.3商品信息:商品id號,商品編號,商品名,商品類別id號,描述,價格,總數(shù)量,狀態(tài),圖片。3.4訂單:訂單id號,訂單編號,用戶id號,訂單提交時間,id編號,郵編,地址,Email,電話。3.5訂單明細:id號,訂單id,商品id,商品數(shù)量,單價,總價。3.6對概要設計中的四個問題的具體解決辦法解決1:為了實現(xiàn)數(shù)量累積,使用了一個Set接口,用HashSet來實現(xiàn)Set接口,因為Set接口可以把相同的對象只存儲一個。用HashMap存儲購買數(shù)量。HashSet的實例存儲購買的商品。解決2:為了降低開銷,提高效力,我們采用了把數(shù)據(jù)庫連接都放到一個JavaBean中,由它單獨完成,當涉及到數(shù)據(jù)庫的操作時,我們直接用jsp中的include調用就可以了。解決3:用戶刪除訂單時,相應的的商品數(shù)量增加,也可以在OrderMess中創(chuàng)建一個Delete觸發(fā)器.當刪除定單時。同是創(chuàng)建一個刪除信息表.代碼如下:CREATETRIGGERTri_DelON[dbo].[OrderMess]FORDELETEASifnotexists(select*fromsysobjectswherename='Temptable') selectorderid,productid,quantityintoTemptablefromdeletedelse insertintoTemptableselectorderid,productid,quantityfromdeleted解決4:在Shopping數(shù)據(jù)庫中的OrderMess表上建一個Insert觸發(fā)器,就可以解決數(shù)量同時減少問題。4.編碼:do_register代碼:此部分代碼用于把已經(jīng)確認的正確的注冊信息寫入數(shù)據(jù)庫后保存。<%@pagecontentType="text/html;charset=gb2312"language="java"

import="java.sql.*,java.util.Date"errorPage=""%><html><head><title>注冊成功</title><linkrel=stylesheethref="style.css"type="text/css"></head><body><%Stringname=request.getParameter("name");Stringpwd=request.getParameter("password");Stringe_mail=request.getParameter("e_mail");Stringtelephone=request.getParameter("telephone");Stringaddress=request.getParameter("address");java.util.DateregTime=newjava.util.Date();Stringregister_Time=regTime.toString();Stringquery="insertintocustomer_info(Name,Telephone,Email,Address,Login_Time,Passwd)

values('"+name+"','"+telephone+"','"+e_mail+"'

,'"+address+"','"+register_Time+"','"+pwd+"')";//try//{StringsDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";Class.forName(sDBDriver);StringsConnStr="jdbc:microsoft:sqlserver://:1433;DatabaseName=Web";Stringusername="sa";Stringpwd1="";ConnectionconnWeb=DriverManager.getConnection(sConnStr,username,pwd1);Statementstmt=connWeb.createStatement();stmt.executeUpdate(query);stmt.close();connWeb.close();out.println("恭喜!注冊成功!您注冊的信息已經(jīng)寫進數(shù)據(jù)庫!");//}//catch(SQLExceptione)//{//out.println(e.getMessage());//}%></body>Index代碼:此部分代碼主要是本網(wǎng)上購物系統(tǒng)的登錄頁面顯示,用于顧客登陸本系統(tǒng)<%@pagecontentType="text/html;charset=gb2312"%><html><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><title>歡迎來到jsp網(wǎng)上書店!</title></head><body><tr><tdcolspan=2align='center'><h1><tablewidth="100%"border="0"cellspacing="0"cellpadding="0"><tr><td><objectclassid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"codebase="/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"width="755"height="168"><paramname="movie"value="images/lucky.swf"><paramname="quality"value="high"><embedsrc="images/lucky.swf"quality="high"pluginspage="/go/getflashplayer"type="application/x-shockwave-flash"width="755"height="168"></embed></object></td></tr></table></tr><formname="form1"method="post"action="login.jsp"><p>帳號<inputtype="text"name="name"></p>密碼<inputtype="password"name="password"><tr><p> <p><tdwidth="179"valign="top"><palign="left"> <inputtype="image"name="B1"src="pic/denglu.gif"onClick="check()"> <ahref="register.jsp"><imgsrc="pic/zhuce.gif"border="0"></a></td></tr></p></form></body></html>List代碼:此部分代碼主要用于購物籃增加、刪除、顯示購物清單等功能(涉及數(shù)據(jù)庫操作)<%@pagesession="true"%><%@pageimport="java.sql.*,java.util.*"%><html><head><title>JSP在線書店</title><scriptlanguage="JavaScript"type="text/JavaScript"><!--functionMM_swapImgRestore(){//v3.0vari,x,a=document.MM_sr;for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)x.src=x.oSrc;}functionMM_preloadImages(){//v3.0vard=document;if(d.images){if(!d.MM_p)d.MM_p=newArray();vari,j=d.MM_p.length,a=MM_preloadImages.arguments;for(i=0;i<a.length;i++)if(a[i].indexOf("#")!=0){d.MM_p[j]=newImage;d.MM_p[j++].src=a[i];}}}functionMM_findObj(n,d){//v4.01varp,i,x;if(!d)d=document;if((p=n.indexOf("?"))>0&&parent.frames.length){d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p);}if(!(x=d[n])&&d.all)x=d.all[n];for(i=0;!x&&i<d.forms.length;i++)x=d.forms[i][n];for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document);if(!x&&d.getElementById)x=d.getElementById(n);returnx;}functionMM_swapImage(){//v3.0vari,j=0,x,a=MM_swapImage.arguments;document.MM_sr=newArray;for(i=0;i<(a.length-2);i+=3)if((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x;if(!x.oSrc)x.oSrc=x.src;x.src=a[i+2];}}//--></script><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"></head><%StringloginSign=(String)session.getValue("loginSign");if(loginSign.equals("OK")){%><bodybgcolor="#F4F5FF"onLoad="MM_preloadImages('images/bb1_1.jpg','images/bb2_1.jpg','images/bb3_1.jpg','images/bb4_1.jpg','images/bb5_1.jpg')"><fontface="TimesNewRoman,Times"size="+3"></font><tablewidth="78%"border="0"align="center"cellpadding="0"cellspacing="0"><tr><tdwidth="20%"><imgsrc="images/logo.jpg"width="230"height="120"></td><tdwidth="80%"><objectclassid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"codebase="/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"width="540"height="120"><paramname="movie"value="images/8.swf"><paramname="quality"value="high"><embedsrc="images/8.swf"quality="high"pluginspage="/go/getflashplayer"type="application/x-shockwave-flash"width="540"height="120"></embed></object></td></tr></table><hr><p><center><b><fontcolor="#3300CC"size="+3"face="華文行楷">JSP在線書店</font></b><tableborder="1"><tr><tdwidth="72"><ahref="#"onMouseOut="MM_swapImgRestore()"onMouseOver="MM_swapImage('Image1','','images/bb1_1.jpg',1)"><imgsrc="images/bb1.jpg"alt="歡迎光臨湖北工業(yè)大學JSP書店"name="Image1"width="160"height="46"border="0"></a></td><tdwidth="80"><ahref="#"onMouseOut="MM_swapImgRestore()"onMouseOver="MM_swapImage('Image2','','images/bb2_1.jpg',1)"><imgsrc="images/bb2.jpg"alt="歡迎光臨湖北工業(yè)大學JSP書店"name="Image2"width="160"height="45"border="0"></a></td><tdwidth="40"><ahref="#"onMouseOut="MM_swapImgRestore()"onMouseOver="MM_swapImage('Image3','','images/bb3_1.jpg',1)"><imgsrc="images/bb3.jpg"alt="歡迎光臨湖北工業(yè)大學JSP書店"name="Image3"width="160"height="45"border="0"></a></td><tdwidth="88"><ahref="#"onMouseOut="MM_swapImgRestore()"onMouseOver="MM_swapImage('Image4','','images/bb4_1.jpg',1)"><imgsrc="images/bb4.jpg"alt="歡迎光臨湖北工業(yè)大學JSP書店"name="Image4"width="160"height="45"border="0"></a></td><tdwidth="68"><ahref="#"onMouseOut="MM_swapImgRestore()"onMouseOver="MM_swapImage('Image5','','images/bb5_1.jpg',1)"><imgsrc="images/bb5.jpg"alt="歡迎光臨湖北工業(yè)大學JSP書店"name="Image5"width="160"height="45"border="0"></a></td></tr><%!Stringitem;%><%!String[]title,author,pubhouse;%><%!float[]price;%><%!int[]id;%><%!floattotalAmount;%><%!intcount,removeNo,i;%><%!booleanisExist;%><%try{StringsDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";Class.forName(sDBDriver);StringsConnStr="jdbc:microsoft:sqlserver://:1433;DatabaseName=Web";Stringusername="sa";Stringpassword="";ConnectionconnWeb=DriverManager.getConnection(sConnStr,username,password);Statementstmt=connWeb.createStatement();Stringquery="selectbookname,author,price,publichouse,bookidfrombook_info";ResultSetrs=stmt.executeQuery(query);i=0;while(rs.next()){i++;}title=newString[i];author=newString[i];pubhouse=newString[i];price=newfloat[i];id=newint[i];i=0;rs=stmt.executeQuery(query);while(rs.next()){title[i]=rs.getString(1);author[i]=rs.getString(2);price[i]=rs.getFloat(3);pubhouse[i]=rs.getString(4);id[i]=rs.getInt(5);%><tr><td><%=title[i]%></td><td><%=author[i]%></td><td><%=price[i]%></td><td><%=pubhouse[i]%></td><td><Ahref="list.jsp?action=add&item=<%=i%>"><imgsrc="images/wing_20.jpg"width="160"height="46"></a></td></tr><%i++;}rs.close();stmt.close();connWeb.close();}catch(Exceptione){out.println(e.getMessage());}%></table><%Stringaction=request.getParameter("action");if(action!=null){%><formaction="purchase.jsp"mothod="post">您的購物車中有以下物品:<tableborder="1"><tr><td>booktitle</td><td>bookauthor</td><td>price</td><td>publichouse</td><td>Quantity</td><td></td></tr><%isExist=false;VectorbuyList=(Vector)session.getValue("shoppingcart");item=request.getParameter("item");intbookID;shop.Bookinfocart=newshop.Bookinfo();try{bookID=Integer.parseInt(item);if(action.equals("add")){cart.setId(id[bookID]);cart.setBookname(title[bookID]);cart.setAuthor(author[bookID]);cart.setPrice(price[bookID]);cart.setQuantity(1);cart.setPublichouse(pubhouse[bookID]);if(buyList==null){buyList=newVector();buyList.addElement(cart);}else{for(inti=0;i<buyList.size();i++){inttempid=((shop.Bookinfo)buyList.elementAt(i)).getId();inttmp=((shop.Bookinfo)buyList.elementAt(i)).getQuantity();if(tempid==cart.getId()){isExist=true;((shop.Bookinfo)buyList.elementAt(i)).setQuantity(tmp+1);}}if(!isExist)buyList.addElement(cart);}}if(action.equals("del")){for(inti=0;i<buyList.size();i++){inttempid=((shop.Bookinfo)buyList.elementAt(i)).getId();if(tempid==bookID)removeNo=i;}buyList.removeElementAt(removeNo);}session.putValue("shoppingcart",buyList);totalAmount=0;for(inti=0;i<buyList.size();i++){out.println("<tr>");out.println("<td>");out.println(((shop.Bookinfo)buyList.elementAt(i)).getBookname());out.println("</td>");out.println("<td>");out.println(((shop.Bookinfo)buyList.elementAt(i)).getAuthor());out.println("</td>");out.println("<td>");out.println(((shop.Bookinfo)buyList.elementAt(i)).getPrice());out.println("</td>");out.println("<td>");out.println(((shop.Bookinfo)buyList.elementAt(i)).getPublichouse());out.println("</td>");out.println("<td>");out.println(((shop.Bookinfo)buyList.elementAt(i)).getQuantity());out.println("</td>");out.println("<td>");inttmp=((shop.Bookinfo)buyList.elementAt(i)).getId();inttmpQuantity=((shop.Bookinfo)buyList.elementAt(i)).getQuantity();floatprice=((shop.Bookinfo)buyList.elementAt(i)).getPrice();floatbooktotal=price*tmpQuantity;totalAmount=totalAmount+booktotal;%><Ahref="list.jsp?action=del&item=<%=tmp%>">暫時不購買:)</a><%out.println("</td>");out.println("</tr>");}out.println("</table>");out.println("total:"+totalAmount);out.println("<inputtype=\"submit\"value=\"submit\">");}catch(Exceptione){out.println(e.getMessage());}}}%></form></center></body></html>Login代碼:此部分代碼主要檢驗用戶名與密碼是否正確存在,若是則登錄進入系統(tǒng),否則提示錯誤信息<%@pagesession="true"%><%@pageimport="java.sql.*"%><html><head><title>Bookstore</title><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"></head><bodybgcolor="#F4F5FF"><fontface="TimesNewRoman,Time"size="+3">網(wǎng)上書店</font><hr><p><center><%Stringname=request.getParameter("name");Stringpwd=request.getParameter("password");//try{StringsDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";Class.forName(sDBDriver);StringsConnStr="jdbc:microsoft:sqlserver://:1433;DatabaseName=Web";Stringusername="sa";Stringpassword="";ConnectionconnWeb=DriverManager.getConnection(sConnStr,username,password);Statementstmt=connWeb.createStatement();Stringquery="selectCustomer_IDfromcustomer_infowhereName='"+name+"'andPasswd='"+pwd+"'";ResultSetres=stmt.executeQuery(query);if(res.next()){Integertemp=newInteger(res.getInt(1));res.close();Stringcustomerid=temp.toString();session.putValue("loginSign","OK");session.putValue("cID",customerid);%><%response.sendRedirect("list.jsp");%><%}else{res.close();session.putValue("login_message","用戶名或密碼錯誤");%><jsp:forwardpage="register.jsp"/><%}}//catch(Exceptione){//e.getMessage();}%></center></body></html>Purchase代碼:此部分代碼主要用于把購物籃信息寫入數(shù)據(jù)庫保存,并可從后臺查詢相關購物信息。<%@pageimport="java.sql.*,java.util.*"%><%@pagesession="true"%><html><head><title>網(wǎng)上書店</title><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"></head><bodybgcolor="#F4F5FF"><pre><fontface="TimesNewRoman,Times"size="+3"><fontcolor="#00FF00"face="華文彩云"><strong>網(wǎng)上書店歡迎您!</strong></font><fontcolor="#0033FF"face="華文行楷">您的定單已經(jīng)寫入數(shù)據(jù)庫</font></font><fontcolor="#0033FF"face="華文行楷">!</font><hr><p><center><%intcustomer_id;StringcID=(String)session.getValue("cID");customer_id=Integer.parseInt(cID);VectorbuyList=(Vector)session.getValue("shoppingcart");try{StringsDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";Class.forName(sDBDriver);StringsConnStr="jdbc:microsoft:sqlserver://:1433;DatabaseName=Web";Stringusername="sa";Stringpassword="";ConnectionconnWeb=DriverManager.getConnection(sConnStr,username,password);Statementstmt=connWeb.createStatement();for(inti=0;i<buyList.size();i++){intbookid=((shop.Bookinfo)buyList.elementAt(i)).getId();intbook_quantity=((shop.Bookinfo)buyList.elementAt(i)).getQuantity();Stringquery="insertintoorder_info(Customer_ID,Book_ID,Book_Quantity)values('"+cID+"','"+bookid+"','"+book_quantity+"')";stmt.executeUpdate(query); ResultSetrs=stmt.executeQuery("select*fromorder_info");out.println("查看后臺") ; while(rs.next()){ out.println("order_id:"+rs.getString("order_id")+"customer_id:"+rs.getString("customer_id")); } rs.close(); stmt.close();connWeb.close();}}catch(SQLExceptione){e.getMessage();}session.putValue("shoppingcart",null);%></center></pre></body></html>Register代碼:此部分代碼主要用于檢查新用戶的基本信息注冊,防止不合法的注冊信息<%@pagecontentType="text/html;charset=gb2312"%><html><head><title>注冊</title><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><linkhref="../456/common/css/sunhoo.css"rel="stylesheet"type="text/css"><scriptlanguage="JavaScript">functionValidateLoginForm(form){if(.value==""){alert("請輸入用戶名");returnfalse}if(form.password.value==""){alert("請輸入密碼");returnfalse}elseif((form.password.value.length<3)||(form.password.value.length>8)){ alert("密碼必須是3-8位字母或數(shù)字"); returnfalse;}if(form.re_password.value==""){alert("請輸入密碼確認");returnfalse}elseif(form.password.value!=form.re_password.value){ alert("兩次密碼不同!"); returnfalse;}if(form.telephone.value==""){alert("請輸入電話");returnfalse}if(form.e_mail.value==""){alert("請輸入e_mail");returnfalse}if(form.address.value==""){alert("請輸入address");returnfalse}returntrue}</script></head><bodybgcolor="#F4F5FF"leftmargin="0"topmargin="0"><formname="login"action="register_confirm.jsp"method=postonSubmit="returnValidateLoginForm(this)"><tablewidth="100%"height="100%"border="0"cellpadding="0"cellspacing="0"><tr><tdwidth="12%"height="307"valign="top"></td><tdwidth="88%"valign="top"><tablewidth="100%"border="0"cellspacing="0"cellpadding="0"><tr><tdvalign="top"> </td></tr><tr><td><tablewidth="100%"border="0"cellspacing="0"cellpadding="0"><tr><tdwidth="19%"> </td><tdwidth="81%"background="image/index_right_bg.gif"><formname="form1"method="post"action="register_confirm.jsp"><tablewidth="38%"border="0"cellpadding="4"cellspacing="1"bgcolor="#999999"><tralign="center"bgcolor="#f6f6f<tdcolspan="2"><b>用戶注冊</b></td></tr><tralign="center"bgcolor="#FFFFFF"><td><divalign="right">用戶名</div></td><td><inputtype="text"name="name"></td></tr><tralign="center"bgcolor="#FFFFFF"><tdwidth="36%"><divalign="right">密碼:</div></td><tdwidth="64%"><inputname="password"type="password"></td></tr><tralign="center"bgcolor="#FFFFFF"><td><divalign="right">密碼確認:</div></td><td><inputname="re_password"type="password"value=""></td></tr> <trbgcolor="#FFFFFF"><tdheight="25"><divalign="right">電話:</div></td><tdheight="25"><divalign="center"><inputtype="text"name="telephone"></div></td></tr><trbgcolor="#FFFFFF"><tdheight="25"><divalign="right">E_mail:</div></td><tdheight="25"><divalign="center"><inputtype="text"name="e_mail"></div></td></tr><trbgcolor="#FFFFFF"><tdheight="25"><divalign="right">送貨地址:</div></td><tdheight="25"><divalign="center"><inputtype="text"name="address"></div></td></tr><tralign="center"bgcolor="#FFFFFF"><a><tdcolspan="2"><inputtype="submit"src="img/index.login.gif"width="50"height="22"border="0"></td></a></tr></table><spanclass="top"></form></td></tr><tr><td><spanclass="top"></td></tr></td></tr></Form></body></html>register_confirm代碼:此部分代碼用于注冊信息的確認檢查,防止自己輸入的信息錯誤,或者是注冊用戶名為已經(jīng)存在的用戶<%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"errorPage=""%><html><head><title>注冊確認</title><linkrel=stylesheethref="style.css"type="text/css"></head><body><center><%Stringname=request.getParameter("name");Stringpassword=request.getParameter("password");Stringe_mail=request.getParameter("e_mail");Stringtelephone=request.getParameter("telephone");Stringaddress=request.getParameter("address");Stringquery="select*fromcustomer_infowherename='"+name+"'";StringsDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";Class.forName(sDBDriver);StringsConnStr="jdbc:microsoft:sqlserver://:1433;DatabaseName=Web";Stringusername="sa";Stringpwd="";ConnectionconnWeb=DriverManager.getConnection(sConnStr,username,pwd);Statementstmt=connWeb.createStatement();ResultSetrs=stmt.executeQuery(query);if(rs.next()){rs.close();session.putValue("register_message","用戶名已存在,請重新注冊!");%><jsp.forwardpage="register.jsp"/><%}else{rs.close();}%><FORMMETHOD=POSTACTION="do_register.jsp"><INPUTTYPE="hidden"name="name"value="<%=name%>"><INPUTTYPE="hidden"name="password"value="<%=password%>"><INPUTTYPE="hidden"name="e_mail"value="<%=e_mail%>"><INPUTTYPE="hidden"name="telephone"value="<%=telephone%>"><INPUTTYPE="hidden"name="address"value="<%=address%>"><!--<tableborder="0"width="500"cellspacing="0"cellpadding="0"height="5"style="border-collapse:collapse"bordercolor="#111111"><tr><tdbgcolor="#F5EFE7"><tableborder="0"width="100%"cellspacing="1"><tr><tdwidth="100%"><br><divalign="center"><center><tablewidth="90%"border="0"cellpadding="0"cellspacing="0"style="border-collapse:collapse"bordercolor="#111111">-->親愛的<%=name%>,請檢查您的注冊信息<br><br><TABLEwidth="60%"border="1"><TABLEwidth="60%"border="1"><form><TR><TD>您的帳號:</TD><TD><%=name%></TD></TR><TR><TD>密   碼:</TD><TD><%=password%></TD></TR><TR><TD>E_mail:</TD><TD><%=e_mail%></TD></TR><TR><TD>電話號碼:</TD><TD><%=telephone%></TD></TR><TR><TD>您的地址:</TD><TD><%=address%></TD></TR></TABLE><br><INPUTTYPE="submit"value="提交注冊">  <INPUTTYPE="button"value="返回修改"onclick="h

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論