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

正文內(nèi)容

基于java網(wǎng)上購(gòu)物商城(編輯修改稿)

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

【文章內(nèi)容簡(jiǎn)介】 述說(shuō)明 userid int 否 編號(hào),主鍵 name varchar 否 注冊(cè)名 Sex varchar 否 性別 birthday varchar 否 出生日期 password varchar 否 密碼 telephone varchar 否 電話 address varchar 否 地址 varchar 否 郵箱 grade varchar 是 級(jí)別 truename varchar 否 真是姓名 商品信息表( products)主要記錄手機(jī)的具體信息,具體情況如 表 3: 表 3 手機(jī)信息表 字段名 數(shù)據(jù)類(lèi)型 是否為空 描述說(shuō)明 itermid int 否 項(xiàng)目 編號(hào) productid vatchar 否 產(chǎn)品編號(hào) productname varchar 否 產(chǎn)品名稱(chēng) productpice float 是 商品價(jià)格 count int 是 庫(kù)存數(shù)量 activity varchar 是 是否活動(dòng)商品 activeprice float 是 活動(dòng)商品的價(jià)格 kind varchar 是 商品類(lèi)別 photo varchar 是 圖片 information varchar 是 商品信息 yunfei float 是 運(yùn)費(fèi) 訂單表( orders)主要記錄每筆訂單的相關(guān)信息,如 表 4: 表 4 訂單表 字段名 數(shù)據(jù)類(lèi)型 是否為空 描述說(shuō)明 orderid int 否 訂單編號(hào) userid int 否 用戶(hù)編號(hào) 12 orderdate varchar 否 訂單生成時(shí)間 paymode varchar 否 支付方式 ispayed varchar 否 是否支付 totalprice float 是 訂單總價(jià) address varchar 否 訂貨地址 訂單明細(xì)表 (orderdetail)記錄訂單所選 商品編號(hào) ,數(shù)量等詳 細(xì)信息。如表 5所示 : 表 5 訂單明細(xì)表 字段名 數(shù)據(jù)類(lèi)型 是否為空 描述說(shuō)明 orderid int 否 訂單 編 號(hào) goodid varchar 是 商品編號(hào) num int 是 商品數(shù)量 price float 是 商品單價(jià) 4 詳細(xì)設(shè)計(jì)與系統(tǒng)實(shí)現(xiàn) 系統(tǒng)詳細(xì)設(shè)計(jì)總體概述 此系統(tǒng)的開(kāi)發(fā)采用了現(xiàn)在比較流行的 MVC 開(kāi)發(fā)模式, MVC 是 model, view,controller 三個(gè)單詞的縮寫(xiě),這種開(kāi)發(fā)模式將整個(gè)系統(tǒng)分為了三個(gè)大類(lèi),數(shù)據(jù)模型、用戶(hù)界面和控制器,其中數(shù)據(jù)模型( model)用 java 編寫(xiě),用于實(shí)現(xiàn)系統(tǒng)中的數(shù)據(jù)邏輯,包含了所有的 JavaBean 和方法;用戶(hù)界面( view)用 jsp 編寫(xiě),用于與用戶(hù)的交互,包含了用戶(hù)能看到的所有頁(yè)面信息,也可以理解為 view 就是由無(wú)數(shù)個(gè)頁(yè)面組成的;控制器( controller)是 model 和 view 之間溝通的橋梁,可以 根據(jù)用戶(hù)的 不同 請(qǐng)求 來(lái)跳轉(zhuǎn)到相應(yīng)的 界面,相當(dāng)于公司中的領(lǐng)導(dǎo)階層,接收 view 中提交上來(lái)的信息,然后交給 model 中的方法將這些信息進(jìn)行處理,接收處理后的信息返回給頁(yè)面或者存入數(shù)據(jù)庫(kù)。 這種設(shè)計(jì)模式實(shí)現(xiàn)了業(yè)務(wù)層和視圖層的分離,使網(wǎng)站 能更好的進(jìn)行維護(hù)與升級(jí),并且有低耦合,高重用性,較低的生命周期成本,可維護(hù)性等優(yōu)點(diǎn),下面就圍繞這種開(kāi)發(fā)模式對(duì)本網(wǎng)站設(shè)計(jì)進(jìn)行分模塊的詳細(xì)介紹。 13 數(shù)據(jù)庫(kù)的操作的 JavaBean 設(shè)計(jì) 作為一個(gè)公共類(lèi),數(shù)據(jù)庫(kù)操作的 JavaBean 一般 包括 數(shù)據(jù)庫(kù)的鏈接getConnection、執(zhí)行 executeQuery、 更新操作 的執(zhí)行 executeUpdate、連接的關(guān)閉close 方法 。下面 是數(shù)據(jù)庫(kù)操作 JavaBean 的具體信息。 使用 JDBC 訪問(wèn)數(shù)據(jù)庫(kù) : 在 Java 語(yǔ)言中, Java 可以 通過(guò) JDBC 對(duì)數(shù)據(jù)庫(kù)進(jìn) 行訪問(wèn) 。 JDBC 是一種“開(kāi)放”的方案, 提供了一種標(biāo)準(zhǔn)的應(yīng)用程序接口 。 應(yīng)用程序 要 訪問(wèn)數(shù)據(jù)庫(kù) 必須加載數(shù)據(jù)庫(kù)驅(qū)動(dòng) ,再通過(guò) JDBC 建立連接 才能 訪問(wèn)數(shù)據(jù)庫(kù),執(zhí)行 SQL 語(yǔ)句,最后 必須斷 連接 以釋放資源 ,過(guò)程如圖 8所示: 在 connDB 中使用 getConnection()方法 建立與數(shù)據(jù)庫(kù)的連接。 首先是加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序: ()。用到 包中的類(lèi)Class,調(diào)用 Class 類(lèi)中的 方法 forName()方法來(lái)獲取 MySQL 數(shù)據(jù)庫(kù)連接 ,(jdbc:ot, 142857)。第一個(gè)參數(shù)是連接數(shù)據(jù)庫(kù) URL,第二,三個(gè)參數(shù)為帳戶(hù)名和密碼 .最后調(diào)用 Statement的 executeQuery(),executeUpdate()或 execute()方法完成對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)。 connDB 類(lèi)的成員及說(shuō)明 如 表 6: 表 6 connDB 類(lèi)成員表 成員名 返回值 類(lèi)別 作用域 功能 conn Connection public 記錄數(shù)據(jù)庫(kù) 連接 Java應(yīng)用程序 DBMS JDBC API JDBC驅(qū)動(dòng)程序管理器 JDBC驅(qū)動(dòng)程序API JDBC 網(wǎng)絡(luò)驅(qū)動(dòng)程序 JDBCODBC 橋驅(qū)動(dòng)程序 圖 8 Java 應(yīng)用程序訪問(wèn)數(shù)據(jù)庫(kù)的過(guò)程 14 st Statement public 向數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句 rs ResultSet public 裝載查詢(xún)結(jié)果 getConnection() Connection public static 建立數(shù)據(jù)庫(kù)連接 executeQuery(String sql) ResultSet public 進(jìn)行查詢(xún)操作 executeUpdate(String sql) int public 更新操作,返回更新行數(shù) close() void public 關(guān)閉數(shù)據(jù)庫(kù)連接 用戶(hù) 主界面設(shè)計(jì) 系統(tǒng)的用戶(hù)主界面是用戶(hù)了解商城的 首要 窗口,其中必須包括 商城中商品 的主要信息和相關(guān)入口。用戶(hù)在首頁(yè) 可以進(jìn)行 注冊(cè) 成為會(huì)員 , 登錄后可以進(jìn)行購(gòu)機(jī)等 相關(guān)操作。用戶(hù)還可以選擇相應(yīng)的菜單選項(xiàng)進(jìn)行選購(gòu)手機(jī) ,手機(jī)詳細(xì) 信息 的 查看,不同分類(lèi)的手機(jī)信息瀏覽,還有常見(jiàn)問(wèn)題,相關(guān)聯(lián)系方式。 主界面 的構(gòu)成:最上面 為 ,包含頭部的主要信息,比如用戶(hù)登錄狀態(tài),商城 logo,搜索框,導(dǎo)航欄的信息;左邊的為 ,包含用戶(hù)登錄注冊(cè)入口和新品上市,分別是用戶(hù)登錄和顯示本商城最新上市商品的地方;右邊是 ,包含一個(gè) flash 和活動(dòng)專(zhuān)區(qū), flash 顯示了本店的特色商品和一些最新活動(dòng)信息,活動(dòng)專(zhuān)區(qū)則提供了本店正在促銷(xiāo)和降價(jià)的商品,主界面最下面是 ,用來(lái)聲明版權(quán)。 在系統(tǒng)主界面最上面顯示用戶(hù)的登錄狀態(tài),如果用戶(hù)未登錄就有用戶(hù)未登錄的提示,如果用戶(hù)已經(jīng)登錄則顯示登錄用戶(hù)的用戶(hù)名和安全退出的信息,用戶(hù)名是一個(gè)超鏈接,通過(guò)點(diǎn)擊用戶(hù)名則完成從主界面到用戶(hù)中心的跳轉(zhuǎn),跳轉(zhuǎn)的時(shí)候后臺(tái)會(huì)根據(jù)登錄用戶(hù)的級(jí)別(是否為管理員)跳轉(zhuǎn)到不同級(jí)別的個(gè)人中心頁(yè)面,導(dǎo)航欄通過(guò)超鏈接實(shí)現(xiàn)分類(lèi)信息的參數(shù)傳遞,通 過(guò)后臺(tái)程序的運(yùn)行從數(shù)據(jù)庫(kù)中提取相應(yīng)的列表,從而實(shí)現(xiàn)到分類(lèi)信息列表的跳轉(zhuǎn)。左邊的登錄和注冊(cè)入口在未登錄的時(shí)候顯示的是登錄和注冊(cè)窗口,用戶(hù)登陸以后則以一張圖片替換,新品上市和活動(dòng)專(zhuān)區(qū)則與數(shù)據(jù)庫(kù)相連,根據(jù)數(shù)據(jù)庫(kù)中的信息動(dòng)態(tài)的顯示相關(guān)商品的信息 。 主界面如圖 9 所示: 15 圖 9 主界面 用戶(hù)信息管理模塊的設(shè)計(jì) 會(huì)員登錄模塊設(shè)計(jì) 此模塊的主要功能是對(duì) 用戶(hù)名和密碼進(jìn)行 驗(yàn)證,只有合法的用戶(hù)才能使用本系統(tǒng)購(gòu)買(mǎi)手機(jī)。 如果不是本網(wǎng)站的會(huì)員必須先進(jìn)行注冊(cè)才能購(gòu)買(mǎi)此網(wǎng)站的商品 。在首頁(yè) 的登錄窗口 中 有一個(gè)用戶(hù)登錄菜單。用 戶(hù)填寫(xiě)的所有信息 都 由 Form表單使用 post 方法提交給服務(wù)器 。 服務(wù)器 通過(guò) getParameter 函數(shù)獲得 Form 表單 提交的信息,通過(guò)提交的用戶(hù)名取出數(shù)據(jù)庫(kù)中的密碼,將取出的密碼與用戶(hù)提交的密碼進(jìn)行比對(duì),如果一致則合法,并不是直接通過(guò)數(shù)據(jù)庫(kù)語(yǔ)言與數(shù)據(jù)庫(kù)中的密碼匹配,這樣做的好處是可以有效的防治 SQL 漏洞。在用戶(hù)登錄后, 將 用戶(hù)的所有信息 通過(guò) setAttribute 函數(shù) 保存在session 中,方便其它界面使用 隨時(shí)使用 對(duì)象中的用戶(hù)信息。此外,該界面還提供出錯(cuò)處理,如用戶(hù)登錄時(shí)用戶(hù)信息填寫(xiě) 的格式 不正確 或字符不合法, 都會(huì)給用戶(hù)做出相應(yīng)的錯(cuò)誤提示,直到輸入信息合法才能提交 。本 網(wǎng)站的所有用戶(hù)(普通 會(huì)員與管理員 )都是通過(guò)此登錄窗口進(jìn)行登錄,只需要更具用戶(hù)的級(jí)別實(shí)現(xiàn)頁(yè)面的選擇就可以了 。在此界面中還添加了一個(gè)用戶(hù)注冊(cè)的按鈕,用以幫助第一次使用該系統(tǒng)的人通過(guò)注冊(cè)而成為本網(wǎng)站的會(huì)員。 在頁(yè)面上有一個(gè)安全退出的選項(xiàng),是退出本網(wǎng)站的出口,當(dāng)退出時(shí)把 網(wǎng)頁(yè)中的session 對(duì)象清空, 登錄狀態(tài) 就變?yōu)?用戶(hù)未登錄 的提示。 這 樣做的原因有兩個(gè): 首先16 就是安全性,如果沒(méi)有安全退出,下一個(gè)用戶(hù)很可能會(huì)用該沒(méi)有過(guò)期的 session 對(duì)象;此外 , 假如大多數(shù)人都不 退出登錄 ,那么 session 中無(wú)用的 對(duì)象 在過(guò)期之前就會(huì)一直占用著系統(tǒng)資源 , 從而 造成網(wǎng)絡(luò)資源的浪費(fèi)。 登錄窗口如圖 10,登錄流程如圖 11: 圖 10 用戶(hù)登錄窗 主界面 登陸界面 輸入用戶(hù)名 和密碼 表單是否提交 用戶(hù)名是否存在 密碼是否正確 用戶(hù)類(lèi)別 管理員界面 會(huì)員界面 退出 管理員 會(huì)員 Y N Y N N 圖 11 用戶(hù)登錄流程圖 17 會(huì)員注冊(cè)模塊的設(shè)計(jì) 此網(wǎng)站規(guī)定 只有會(huì)員才有購(gòu)買(mǎi)資格,生成訂單。 游客只能進(jìn)行手機(jī)商品的瀏覽和手機(jī)詳情 查看 的操作 。 在首頁(yè)的 登錄窗口有一個(gè)注冊(cè)的按鈕 ,用戶(hù)通過(guò)此 按鈕 可以 進(jìn)入注冊(cè)頁(yè)面, 也可以 先將商品 加入購(gòu)物車(chē) , 購(gòu)買(mǎi)的時(shí)候會(huì)有提示進(jìn)入注冊(cè)頁(yè)面 。 此模塊中用到了用戶(hù)信息 Bean(userbean)用來(lái)傳遞 form 表單提交的注冊(cè)信息,后臺(tái)通過(guò) reguest 對(duì)象的 gerParameter 方法接收表單提交的信息,調(diào)用相關(guān)函數(shù)將這些信息存入數(shù)據(jù)庫(kù),其中還有異常的處理,比如數(shù)據(jù)庫(kù)中已經(jīng)存在相應(yīng)的用戶(hù)名,兩次輸入的密碼是否一致等情況也都由這些相關(guān)函數(shù)進(jìn)行判斷和處理。注冊(cè)用戶(hù)的代碼如下: public boolean addUser(String username,String password,String sex,String birthday,String ,String truename,String address,String telephone){ boolean b=true。 try{ ct=new ConnDB().getconnection()。 ps=(insert into users (name,password,sex,birthday,,truename,address,telephone)values(?,?,?,?,?,?,?,?))。 (1, username)。 (2, password)。 (3, sex)。 (4, birthday)。 (5, )。 (6, truename)。 (7, address)。 (8, telephone)。 ()。 }catch(Exception e){ ()。 b=false。 }finally{ ()。 18 } return b。 } 注冊(cè)成功后,用戶(hù)就可以用自己注冊(cè)的賬戶(hù)進(jìn)行商品的購(gòu)買(mǎi)和對(duì)自己信息的修改等操作,當(dāng)然注冊(cè)成功后會(huì)自動(dòng)登錄,將用戶(hù)信息的 bean 放入 session 中,以便用戶(hù)在本網(wǎng)站繼續(xù)其他的操作。 用戶(hù)注冊(cè)界面如圖 12: 圖 12 用戶(hù)注冊(cè)界面 用戶(hù)信息的查看與修改模塊的設(shè)計(jì) 用戶(hù) 在這里 可以 查看 和修改 自己 信息,更改密碼。 如果是系統(tǒng)管理員, 還 可以查看其他用戶(hù)的信息,級(jí)別 的 修改,對(duì)不合法用戶(hù)進(jìn)行刪除 等 操作。 在用戶(hù)信息的查看與修改界面和注冊(cè)界面幾乎完全一樣,只不過(guò)注冊(cè)的會(huì)員名是不可以修改的,其他的信息都可以根據(jù)用戶(hù)的需要(如工作、住址、電話的變更)進(jìn)行修改,具體修改的代碼如下: public boolean updateByUsername(String username,String truename,String address,String telephone,String ){ boolean b=true。 try{ ct=new ConnDB().getconnection()。 ps=(update users s
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1