freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文-網(wǎng)上化妝品購(gòu)物系統(tǒng)設(shè)計(jì)-資料下載頁(yè)

2025-06-06 13:12本頁(yè)面
  

【正文】 elopment Kit )是一切 java應(yīng)用程序的基礎(chǔ),可以說(shuō),所有的 java應(yīng)用程序是構(gòu)建在這個(gè)之上的。它是一組 API,也可以說(shuō)是一些 java Class。目前已經(jīng)正 式發(fā)布的最新版本是 []。 Windows 下,直接運(yùn)行 .exe 文件,安裝到一個(gè)目錄,如C:/,安裝完成后就是環(huán)境變量的設(shè)置。 桌面上選擇“我的電腦” (右鍵 ) - 高級(jí) 環(huán)境變量 在“系統(tǒng)變量” “新建” 在變量名中輸入: JAVA_HOME,變量值中輸入: C:/ 同樣再新建一個(gè)變量名 CLASSPATH,變量值中輸入: C:\。 C:\\lib\。 C:\\lib\。 還需要在 Path變量值后面添加一個(gè)值: C:\\bin。至此 JAVA環(huán)境安裝成功??梢栽诿钚兄星萌朊?java 如果顯示 java 幫助,則證明環(huán)境設(shè)置成功。 Tomcat 環(huán)境搭建 安裝 TOMCAT,直接使用默認(rèn)安裝就可以了 ,假如將其安裝在C:\, 安裝完畢后,開(kāi)始設(shè)置環(huán)境變量,新建環(huán)境變量 CATALINA_HOME,值為C:\,新建 CATALINA_BASE,值為 C:\。 打開(kāi) 文件中的 bin文件,雙擊其中的運(yùn)行程序 Server Runner,顯示server start,服務(wù)器正常啟動(dòng),此時(shí)在瀏覽器上敲入本地測(cè)試地址: 如果出現(xiàn) Tomcat 頁(yè)面則證明 Tomcat 安裝成功,而且正常啟動(dòng)。 到這里,系統(tǒng)運(yùn) 行所需要的基本運(yùn)行環(huán)境已經(jīng)安裝完成。 系統(tǒng)程序的安裝和加載 文件的拷貝 可以將整個(gè)系統(tǒng)文件夾 shop 拷貝到 Tomcat 的默認(rèn)根目錄下,一般路徑為: C:\\webapps\ROOT。 數(shù)據(jù)庫(kù)的連接 因?yàn)樵撓到y(tǒng)僅作為畢業(yè)設(shè)計(jì)使用,為了方便演示和運(yùn)行,系統(tǒng)所用數(shù)據(jù)庫(kù),采用了 office 自帶的 Access 數(shù)據(jù)庫(kù),系統(tǒng)所用到的所有表都在其中,這里的數(shù)據(jù)庫(kù)名稱(chēng)為 db,放在目錄 shop/database/下面,連接使用 ODBC 數(shù)據(jù)源連接。 數(shù)據(jù)源 設(shè)置步驟:( windows 操作系統(tǒng)) “控制面板” 管理工具” “數(shù)據(jù)源 (ODBC)” “用戶(hù) DNS” “添加” 〉選擇驅(qū)動(dòng)器“ Microsoft Access Driver” 點(diǎn)擊“完成” : shnxn : shop 下面 database 下的 ,為了安全,您可以把數(shù)據(jù)庫(kù)放置在任何地方,只需保證這里的連接到那個(gè)數(shù)據(jù)庫(kù)即可 。 “確定” 設(shè)置完數(shù)據(jù)源以后,把 文件中的 classes 文件下的所有文件夾復(fù)制到 網(wǎng)站根目錄的 webinf 文件夾下面; 然后重啟服務(wù)器即可。 在瀏覽器敲入地址: 可以看到網(wǎng)站的主頁(yè)面已經(jīng)出現(xiàn),至此,系統(tǒng)加載成功。 Myeclipse 開(kāi)發(fā)工具 下面請(qǐng)看開(kāi)發(fā)界面如圖 61 所示: 圖 61 myeclipse 開(kāi)發(fā)界面 是開(kāi)發(fā) jsp 的強(qiáng)有力的工具,他集成了很多插件,本網(wǎng)上購(gòu)物系統(tǒng)就是在 的平臺(tái)上開(kāi) 發(fā)的。 系統(tǒng)測(cè)試 系統(tǒng)關(guān)鍵部分測(cè)試分析 系統(tǒng)完成之后,對(duì)各個(gè)模塊的功能進(jìn)行了詳細(xì)的測(cè)試,輸入數(shù)據(jù)和預(yù)測(cè)輸出數(shù)據(jù)相比,發(fā)現(xiàn)了一些問(wèn)題。主要是在查詢(xún)過(guò)程中預(yù)計(jì)查詢(xún)結(jié)果和實(shí)際結(jié)果不一致,有時(shí)候達(dá)不到目的,對(duì)數(shù)據(jù)庫(kù)的操作表之間的關(guān)聯(lián)考慮得不夠周到,因此往往會(huì)出現(xiàn)一些小的錯(cuò)誤。還有查詢(xún)條件的前后數(shù)據(jù)類(lèi)型不一致也是一個(gè)很常見(jiàn)的錯(cuò)誤,需要靠一步步的查找解決。各個(gè)模塊組裝完成后,又會(huì)出現(xiàn)一些問(wèn)題。比如在操作購(gòu)物車(chē)結(jié)帳的這個(gè)流程中,由于是多次添加和修改,最后結(jié)帳,所以很容易造成數(shù)據(jù)混亂 ,必須對(duì)相應(yīng)的數(shù)據(jù)關(guān)系理清楚,一些關(guān)鍵查詢(xún)統(tǒng)計(jì)的 SQL語(yǔ)句必須反復(fù)斟酌才能放在程序中使用。 單元測(cè)試分析 ( 1)經(jīng)過(guò)上面部分的分析,可以得知,購(gòu)物車(chē)模塊是需要特別注意的地方,因?yàn)樗婕暗搅藬?shù)據(jù)庫(kù)中的大部分?jǐn)?shù)據(jù),并且是進(jìn)行網(wǎng)上交易的最關(guān)鍵部分,絕對(duì)不能出現(xiàn)任何的差錯(cuò),下面就針對(duì)這一模塊進(jìn)行用例測(cè)試: 以用戶(hù) fywang的身份登入系統(tǒng),用戶(hù)名是: fywang密碼是: fywang 然后點(diǎn)擊定購(gòu)商品: THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g 單價(jià)為 71元 彈出購(gòu)物車(chē)清單:選擇商品數(shù)量 1 確認(rèn) 出現(xiàn)清單:顯示商品名稱(chēng) THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g 數(shù)量1 合計(jì) 71 元 與估算的數(shù)據(jù)相符。 此時(shí)選擇清空購(gòu)物車(chē),繼續(xù)購(gòu)物,點(diǎn)擊定購(gòu)商品: THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g 單價(jià)為 71 元 選擇數(shù)量 2 確認(rèn),出現(xiàn)清單:顯示商品名稱(chēng) THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g 合計(jì) 142 元 繼續(xù)選擇收銀臺(tái)結(jié)帳,出現(xiàn)帳單顯示:顯示商品名稱(chēng) THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g 合計(jì) 142 元 與估算的數(shù)據(jù)也相符,證明清空購(gòu)物車(chē)的功能正常有效,并沒(méi)有將第一次選購(gòu)的物品計(jì)算在內(nèi),價(jià)格的計(jì)算也正確無(wú)誤。 下面來(lái)看后臺(tái)數(shù)據(jù)庫(kù)的數(shù)據(jù): 打開(kāi)購(gòu)物車(chē)表 basket 可以看到以用戶(hù)名 fywang為關(guān)鍵字段的兩條記錄中,一條是第一次添加到購(gòu)物車(chē)的商品信息,一條是第二次添加到購(gòu)物車(chē)的商品信息,可以發(fā)現(xiàn)這兩條記錄的區(qū)別,第二條記錄 THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g的basket_check屬性為是, subnumber 屬性為 fywang 20211511219305349,而第一條 THE FACE SHOP 頂級(jí)抗皺面霜 (晚霜 )55g 的 basket_check屬性為否, subnumber 屬性為空,證明該條記錄沒(méi)有產(chǎn)生訂單也就是說(shuō)這次無(wú)效的選購(gòu)記錄,并沒(méi)有被計(jì)入到帳單中,和的預(yù)期目標(biāo)一致,即該部分功能正常,測(cè)試完畢。 ( 2)對(duì)用戶(hù)注冊(cè)部分進(jìn)行測(cè)試 用戶(hù)名: fywang 密碼: fywang 確認(rèn): fywang E _mail: 地址:河南焦作大學(xué) 郵 編: 454000 真實(shí)性名:周倩 提交以后,彈出提示信息:該用戶(hù)已存在,用戶(hù)名重復(fù)驗(yàn)證正常 將用戶(hù)名改為:幾個(gè)空格 然后其他的不變 提交之后會(huì)發(fā)現(xiàn)系統(tǒng)返回成功頁(yè)面,但問(wèn)題是用戶(hù)名什么也沒(méi)有,空格也被作為合法的用戶(hù)名,這在實(shí)際應(yīng)用中是不允許的,需要對(duì)其命名規(guī)則進(jìn)行定義,具體修改請(qǐng)參看后面存在問(wèn)題及解決方法。 同樣的郵編及電話(huà)也存在規(guī)則未定義的問(wèn)題,需要對(duì)其加以定義。 測(cè)試分析總結(jié)及說(shuō)明 在測(cè)試過(guò)程中,經(jīng)過(guò)模塊測(cè)試和組裝測(cè)試,排除了系統(tǒng)的大部分錯(cuò)誤。當(dāng)然排除所 有錯(cuò)誤是不太可能的,應(yīng)該還有些不易檢測(cè)到的錯(cuò)誤還沒(méi)有被發(fā)現(xiàn),需要在使用的過(guò)程中進(jìn)一步的完善,數(shù)據(jù)庫(kù)的加密是一個(gè)重要的概念,在實(shí)際的應(yīng)用過(guò)程中是一個(gè)尚待解決的問(wèn)題,應(yīng)該做好數(shù)據(jù)庫(kù)的完善工作,特別是備份和安全工作;另一方面本系統(tǒng)沒(méi)有制作相關(guān)的打印,由于時(shí)間倉(cāng)促難免有錯(cuò)誤和不完善的地方,希望老師能夠幫我指點(diǎn)和糾正。 系統(tǒng)的性能分析 網(wǎng)上購(gòu)物系統(tǒng)的性質(zhì)決定了它的服務(wù)端工作負(fù)荷比較大,這就要求服務(wù)端的硬件配置要盡可能的高,主要是內(nèi)存,而且操作系統(tǒng)也要盡可能的穩(wěn)定?;?java 的系統(tǒng)一般來(lái)說(shuō)網(wǎng)絡(luò)安全性 比較好,但并不能說(shuō)就一定安全,尤其在 windows 操作系統(tǒng)下,由于 windows 的漏洞比較多,系統(tǒng)裝配在 windows 下并不是最佳的選擇,如果有條件,建議可將系統(tǒng)裝配在 unix操作系統(tǒng)下,提高系統(tǒng)的抗侵入能力。 系統(tǒng)的核心數(shù)據(jù)庫(kù),隨著數(shù)據(jù)的不斷增多,必然會(huì)產(chǎn)生冗余,導(dǎo)致系統(tǒng)運(yùn)行效率降低,建議管理員定期備份和清理冗余數(shù)據(jù),以保證系統(tǒng)的正常高效運(yùn)行。 系統(tǒng)中所存在的問(wèn)題及解決方案 系統(tǒng)的整體設(shè)計(jì)和規(guī)劃中的問(wèn)題 由于是基于 B/S 的系統(tǒng),網(wǎng)頁(yè)在其中就承擔(dān)著非常大的工作,包括向服務(wù)端后 臺(tái)寫(xiě)入和修改數(shù)據(jù),以及服務(wù)端響應(yīng)客戶(hù)端的請(qǐng)求,向客戶(hù)端頁(yè)面返回?cái)?shù)據(jù),這些工作不可能只由幾個(gè)網(wǎng)頁(yè)來(lái)完成,但網(wǎng)頁(yè)數(shù)量一多又必然結(jié)構(gòu)混亂,造成開(kāi)發(fā)過(guò)程難以控制。 為解決這個(gè)問(wèn)題,采用了現(xiàn)代軟件開(kāi)發(fā)過(guò)程的模塊化思想,先將系統(tǒng)功能進(jìn)行分解,大致可分為兩部分,即前臺(tái)和后臺(tái),前臺(tái)又包括主頁(yè)面及產(chǎn)品信息展示頁(yè)面、搜索功能頁(yè)面、新聞頁(yè)面、購(gòu)物車(chē)及訂單頁(yè)面等幾個(gè)大的部分,后臺(tái)包括會(huì)員信息管理、商品信息管理、新聞信息管理、等幾個(gè)部分,各個(gè)部分又由許多小的頁(yè)面組成,這樣一來(lái)雖然網(wǎng)頁(yè)數(shù)量沒(méi)有減少,但結(jié)構(gòu)清晰了很多,在開(kāi)發(fā)過(guò)程中 可以逐步,逐個(gè)模塊的實(shí)現(xiàn),提高了開(kāi)發(fā)效率。 開(kāi)發(fā)功能模塊所遇到的難點(diǎn) 因?yàn)槭堑谝淮巫鲞@么完整的 jsp系統(tǒng),所以碰到的問(wèn)題也很多,除了一些基本的語(yǔ)法之外,感覺(jué)還是一些考慮問(wèn)題的思維方式不太得當(dāng),比如這個(gè)網(wǎng)上購(gòu)物系統(tǒng),感覺(jué)難度比較大的是購(gòu)物車(chē)這個(gè)模塊比較難設(shè)計(jì),因?yàn)檫^(guò)程比較復(fù)雜,它的一些邏輯處理就比較的難以用代碼實(shí)現(xiàn)。 在設(shè)計(jì)過(guò)程中參考了一些電子商務(wù)網(wǎng)站,研究了一下他們的購(gòu)物流程,大概有了一些處理的想法,用戶(hù)在點(diǎn)擊定購(gòu)之后,系統(tǒng)先將該商品信息寫(xiě)入購(gòu)物車(chē)頁(yè)面,只有當(dāng)用戶(hù)在選擇了商品數(shù)量,及 確認(rèn)按鈕之后,系統(tǒng)才將該信息寫(xiě)入 basket 表,用戶(hù)不選擇商品數(shù)量,或者不點(diǎn)擊確認(rèn)按鈕,系統(tǒng)就不把該商品信息寫(xiě)入 basket 表,這樣就不至于造成 basket 表數(shù)據(jù)混亂,用戶(hù)無(wú)法繼續(xù)購(gòu)物。 當(dāng)用戶(hù)完成選購(gòu),點(diǎn)擊去收銀臺(tái)結(jié)算時(shí),系統(tǒng)開(kāi)始判斷商品庫(kù)中的這些商品數(shù)量是否大于用戶(hù)所選數(shù)量,如果沒(méi)有,則提示用戶(hù)沒(méi)有該商品,如果有則將所有 basket表中屬于該用戶(hù) id 的商品信息提出來(lái),并合計(jì)價(jià)格,返回給用戶(hù),用戶(hù)如果確定付款購(gòu)買(mǎi),則給用戶(hù)提供一個(gè)訂貨單,由用戶(hù)填寫(xiě)一些基本信息,確認(rèn)之后,系統(tǒng)則產(chǎn)生一個(gè)唯一的訂貨單號(hào) ,并將其返回給用戶(hù),以便用戶(hù)日后查詢(xún),同時(shí),系統(tǒng)則將該用戶(hù)所選購(gòu)的商品信息以及用戶(hù)信息放入到訂單表中。 這樣就基本上實(shí)現(xiàn)了購(gòu)物車(chē)的功能。 系統(tǒng)中存在的問(wèn)題及擬定的解決方法 (1)第一個(gè)問(wèn)題是用戶(hù)在注冊(cè)過(guò)程中,一些關(guān)鍵字段的命名規(guī)則存在著比較大的缺陷,比如用戶(hù)名的選擇上,一般的習(xí)慣是規(guī)定只能從 a~z和數(shù)字 0~ 9 的隨機(jī)組合,不能有特殊字符,而且只能以字母開(kāi)頭,不能以數(shù)字開(kāi)頭,用戶(hù)名的長(zhǎng)度也有限制,在系統(tǒng)中只考慮了為空的情況,這是不夠的,可以在 jsp 頁(yè)面添加一段 javascript 驗(yàn)證代碼,主要是使用正則表達(dá)式對(duì)用戶(hù)名進(jìn)行限制,具體的代碼如下: if( 5||20) { alert(\您的用戶(hù)名長(zhǎng)度應(yīng)該在 5- 20 個(gè)字符之間 !)。長(zhǎng)度判斷 if ( fIsNumber((0), abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ)!=1 ){ alert(\您的用戶(hù)名只能以字母開(kāi)頭 !)。 開(kāi)頭判斷 if ( fIsNumber(, 特殊字符判斷 1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_)!=1 ){ alert(\您的用戶(hù)名應(yīng)該是數(shù)字、字母、下劃線(xiàn) ,不允許出現(xiàn)漢字等其他字符 !)。 ( 2)第二個(gè)問(wèn)題就是用戶(hù)登陸以后,如果 需要修改資料,系統(tǒng)會(huì)先將數(shù)據(jù)庫(kù)中該用戶(hù)的所有信息以列表形式顯示出來(lái),問(wèn)題就是此時(shí)出現(xiàn)的用戶(hù)密碼信息是以明碼形式出現(xiàn)的,這對(duì)用戶(hù)來(lái)說(shuō)就存在這很大的風(fēng)險(xiǎn),容易被他人看到,最好是以一些特殊符號(hào)來(lái)代替從而防止信息泄漏,在參考了其他網(wǎng)站的登陸模塊之后,我對(duì)代碼進(jìn)行了簡(jiǎn)單修改,即可實(shí)現(xiàn),問(wèn)題是由密碼的輸入框?qū)傩砸鸬?,原始的代碼為: input type=text name=user_pass size=36 class=input value=%=(user_pass)% 此時(shí)密碼輸入框的屬性為 text 也就是文本框,它會(huì)直接將數(shù)據(jù)以明碼形式原封不動(dòng)的輸出,只需將其改為 password 屬性即可,它以默認(rèn)的黑色圓點(diǎn)代替真實(shí)數(shù)據(jù),這樣一個(gè)簡(jiǎn)單的修改,就保證了該部分的安全性。 ( 3)第三個(gè)問(wèn)題是管理人員對(duì)用戶(hù)的管理部分,一個(gè)是用戶(hù)信息,尤其是密碼的加密,處于對(duì)系統(tǒng)安全性的考慮,數(shù)據(jù)庫(kù)中的用戶(hù)密碼應(yīng)該對(duì)于所有人都是加密狀態(tài),包括管理人員,但因本人水平有限對(duì)這個(gè)方面也不是很了解,所以準(zhǔn)備采用現(xiàn)有的加密軟件對(duì)相關(guān)數(shù)據(jù)進(jìn)行加密,如 加密多個(gè)表,加密的文件會(huì)保存為新文件,不會(huì)破壞原來(lái)的數(shù)據(jù)庫(kù)。加密算法采用了base64 算法,但是目前不支持對(duì)中文進(jìn)行加密,且加密的字段屬性必須為“文本”或“備注”,因此對(duì)于需要加密的關(guān)鍵字段,必須事先將其設(shè)置為文本類(lèi)型。如果需要可以也可將整個(gè)數(shù)據(jù)庫(kù)進(jìn)行加密,增加系統(tǒng)的安全性。 還有一個(gè)漏洞就是對(duì)會(huì)員的管理功能做的不夠,沒(méi)有考慮到用戶(hù)密碼丟失的問(wèn)題,解決方法有兩個(gè),一個(gè)就是采取通常的做法,讓用戶(hù)在注冊(cè)過(guò)程中,設(shè)置一些問(wèn)題,
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1