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

正文內(nèi)容

基于j2ee的在線購書系統(tǒng)的設(shè)計與實現(xiàn)-資料下載頁

2024-11-07 22:02本頁面

【導(dǎo)讀】國內(nèi)外研究動態(tài)··································································6. 選題的依據(jù)和意義·······························································6. 本系統(tǒng)的特點和設(shè)計的基本原則··············································6. 2系統(tǒng)開發(fā)平臺和技術(shù)簡介······························&#183

  

【正文】 否 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 address 收貨地址 varchar(100) 否 postcode 郵編 char(6) 否 phone 收貨人電話 varchar(14) 否 ship 送貨方式 varchar(50) 否 payType 付款方式 varchar(20) 否 totalPrice 訂單總額 float 是 默認(rèn)長 度 orderDate 下單時間 datetime 否 status 訂單狀態(tài) varchar(6) 否 ( 3) 訂單詳細(xì) 信息 的 ER 圖轉(zhuǎn)換成的關(guān)系數(shù)據(jù)模式有: 訂單詳細(xì)信息表 tb_orderDetail( ID, orderID, ISBN, unitPrice, count ) 表 43訂單詳細(xì)信息表 tb_orderDetail 字段名稱 字段說明 字段類型 可否為空 主 /外鍵 備注 ID 唯一 ID int(11) 否 主鍵 自動遞增 orderID 訂單 ID int(11) 否 外鍵 ISBN 圖書 ISBN varchar(20) 否 外鍵 unitPrice 圖書單價 float 否 默認(rèn)長度 count 數(shù)量 int(11) 否 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 5 系統(tǒng)實現(xiàn) 系統(tǒng)架構(gòu) 本系統(tǒng)以 Struts2+Spring+Hibernate 架構(gòu)為基礎(chǔ),按照實際的開發(fā)流程來進(jìn)行開發(fā)。包括如下: ( 1) Hibernate 功能開發(fā):包括創(chuàng)建 Hibernate 的持久化類、映射文件,開發(fā) DAO類; ( 2) Struts 功能開發(fā):開發(fā) Action 類、 JSP 頁面表單的校驗,調(diào)用 Hibernate 層的 DAO 類執(zhí)行與數(shù)據(jù)庫的交互; ( 3) Spring 功能開發(fā):創(chuàng)建 文件,并在其中進(jìn)行基礎(chǔ)的Bean 組件配置,包括:數(shù)據(jù)源配置、 SessionFactory 的配置、配置事務(wù)、配置 DAO 組件以及配置 DAO 事務(wù); ( 4)系統(tǒng)功能提升:包括開發(fā)分頁欄通用模塊、圖片國際化、 MySQL 數(shù)據(jù)庫的國際化、系統(tǒng)安全訪問等。 該系統(tǒng)架構(gòu)圖如 圖 51 所示: 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 圖 51 系統(tǒng)架構(gòu)圖 持久層 Hibernate 實現(xiàn) 創(chuàng)建 PO 并配置 Hibernate 映射文件 在進(jìn)行 Struts 層的功能開發(fā)之前,我們需要基于 Hibernate 開發(fā)底層的 Model 層。 創(chuàng)建 Hibernate 的持久化類和映射文件,并在 中進(jìn)行配置; 這是 Hibernate 層開發(fā)的第一步,使用 MyEclipse 的工具 Database Explorer 來自動創(chuàng)建 Hibernate 的持久化類和映射文件,對應(yīng)的數(shù)據(jù)庫分別為 tb_appraise、tb_bbs、 tb_book、 tb_import、 tb_orderDetail、 tb_order、 tb_supplier 以及 tb_user表。最后生成的類文件包括: ( 1)持久化類: 、 、 、 、 、 和 ; ( 2)映射文件: 、 、 、 、 、 、 、 。 需要在 中注冊這些映射文件。 開發(fā) Hibernate DAO 層 到目前為止,系統(tǒng)已經(jīng)具備了 Hibernate 的基礎(chǔ)訪問功能,下面我們要開 Hibernate DAO 層,使用 HibernateTemplate 實現(xiàn)對數(shù)據(jù)表的增、刪、改、查的操作,包括如下兩精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 步: ( 1)定接口類: 、 、 、 、 、 和 ; ( 2)開發(fā)實現(xiàn)類: 、 、 、 、 和 。 控制層 Struts 和業(yè)務(wù)邏輯層 Service 實現(xiàn) 在以上經(jīng)過對 Hibernate 持久化類、映射文件和 DAO 類的開發(fā),已經(jīng)具備了數(shù)據(jù)層的功能代碼,照這樣我們就要開發(fā) Struts 層的代碼,來調(diào)用該數(shù)據(jù)層實現(xiàn)數(shù)據(jù)庫的操作。但在這個系統(tǒng)的實際開發(fā)過程中,并沒有直接調(diào)用 DAO 層,而是在 DAO 層上增加一個 Service 層, Service 層主要調(diào)用 DAO 層來處理業(yè)務(wù)邏輯,完成業(yè)務(wù)需求。同時,增加 Service 層 有利于 系統(tǒng)日后的 擴(kuò)展和維護(hù) 也很重要 。 開發(fā)過程進(jìn)行到這兒時,是 Struts 層的開發(fā)和 Service 層的開發(fā)交替進(jìn)行的,即Struts 層有什么業(yè)務(wù)需求,要調(diào)用怎樣的業(yè)務(wù)邏輯;則在 Service 層編寫對應(yīng)的業(yè)務(wù)邏輯實現(xiàn)類。 在編寫 Struts 層代碼之前,首先開發(fā) JSP 頁面原型。 開發(fā) JSP 頁面原型 在上面配置了 action及 bean元素,并編寫了 Action 類的原型代碼,現(xiàn)在要開發(fā) JSP 頁面,將頁面的鏈接地址、表單請求指向 action,由 Struts 和 Spring 來將該請求轉(zhuǎn)發(fā)到 Action 類的函數(shù)中,實現(xiàn)整個頁面的流轉(zhuǎn)。 實現(xiàn)的步驟如下: ( 1) 規(guī)劃好見面原型 ,利用 Dreamwever8 制作出系統(tǒng)的主頁面; ( 2) 將頁面重復(fù)出現(xiàn)的部分獨立出來,比如主頁面的導(dǎo)航,頭部,和尾部;以便其他頁面可以重復(fù)利用; ( 3) 根據(jù)需求分析階段的現(xiàn)行業(yè)務(wù)分析:制作出所有的靜態(tài)頁面。 開發(fā)控制層 Action 和 Service 層 ( 1)用戶處理模塊 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 圖 52 用戶處理模塊類圖 關(guān)鍵代碼: //處理后臺分頁查詢用戶 public ListUser getUser (PageTool pageInfo, String queryStr) { Query query = getSession().createQuery(queryStr)。 ((() 1) * ())。 (())。 return ()。 } public int getRows(String queryStr) { return getHibernateTemplate().find(queryStr).size()。 } 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 ( 2)購物車模塊 圖 53購物車模塊類圖 購物車實現(xiàn)技術(shù)比較: ① cookie 可用來實現(xiàn)購物車, 但必須獲得瀏覽器的支持,再加上它是存儲在客戶端的信息,極易被獲取,所以這也限制了它存儲更多,更重要的信息。所以一般cookie 只用來維持與服務(wù)器 的會話,例如國內(nèi)最大的當(dāng)當(dāng)網(wǎng)絡(luò)書店就是用 cookie 保持與客戶的聯(lián)系,但是這種方式最大的缺點是如果客戶端不支持 cookie 就會使購物車失效。 ② session 能很好地與交易雙方保持會話,可以忽視 客戶端的設(shè)置。在購物車技術(shù)中得到了廣泛的應(yīng)用。但 session 的文件屬性使其仍然留有安全隱患 ,對服務(wù)器性能要求比較高 。 ③ 結(jié)合數(shù)據(jù)庫的方式雖然在一定程度上解決了上述的問題,但在購物流程中涉及到對數(shù)據(jù)庫表的頻繁操作,尤其是用戶每選購一次商品,都要與數(shù)據(jù)庫進(jìn)行連接,當(dāng)用戶很多的時候就加大了服務(wù)器與數(shù)據(jù)庫的負(fù)荷。 綜合安全、復(fù)雜程度和服務(wù)器性能的考慮,本系統(tǒng)采用 session+JavaBean 實現(xiàn)購物車。 關(guān)鍵代碼: public String execute() throws Exception 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 { (count)。 ActionContext ac = ()。 Integer userId = (Integer)().get(userId)。 String bookIsbn = (String)().get(bookIsbn)。 SellGoodsItem sellGoodsItem = new SellGoodsItem()。 (0)。//積分 (bookIsbn)。//商品 ID ((bookIsbn). getBookName())。//商品名 (count)。//默認(rèn)購買數(shù)量 ((bookIsbn).getPrice())。//市場價 (bookService. get(bookIsbn).getNewPrice())。//本店單價 ((bookIsbn). getNewPrice()*count)。 //每項商品總價 (())。 boolean flag = true。 List cart = (List) ().get(cart)。 (())。 if(null == cart) { cart = new ArrayList()。 (創(chuàng)建購物車 )。 } else { for(int i = 0。 i ()。 i++) { SellGoodsItem sgi = (SellGoodsItem) (i)。 if(().equals(())) { (count)。 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 (count)。 float totalPrice = ()*count。 (totalPrice)。 (totalPrice)。 (i, sgi)。 flag = false。 } //獲取積分 int n = (int)()/100。 if(n =1 ) { (n*6)。 (())。 } } } if(flag) { if(((int)()/100) = 1) { int n = (int)()/100。 (n*6)。 } (sellGoodsItem)。 ().put(cart, cart)。 } return SUCCESS。 } 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 ( 3)訂單處理模塊 圖 54 訂單處理模塊類圖 關(guān)鍵代碼: // 訂單處理 public boolean submitOrder(UserOrder userOrder, String userName) { boolean bool = false。 User user = (userName)。 if (null != userOrder amp。amp。 null != user) { Order order = new Order()。 (new Date())。 (())。 (())。 (())。 (())。 (())。 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 (())。 (())。 (user)。 if(貨到付款 .equals(())) { //以后再添加此功能 (等待確認(rèn) )。 } else { (等待匯款 )。 } // 設(shè)置訂單子項 List items = ()。 Set details = ()。 OrderDetail detail = null。 float sum = 0。 if (null != items) { for (int i = 0。 i ()。 i++) { SellGoodsItem sgi = (SellGoodsItem) (i)。 if (null != sgi) { detail = new OrderDetail()。 (())。 (())。 ((()))。 (order)。 Book b = ()。 //判斷庫存量是否為 0 if(() == 0) { (缺貨 )。 //把庫存量設(shè)為購買量的負(fù)數(shù) 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 (())。 (b)。 (預(yù)訂成功! +())。 } // 該 OrderDetail: orderDetail 中的商品數(shù)目 int n = ()。 // 該 OrderDetail: orderDetail 中的總金額 sum =sum + n*(())。 if (null == details) { details = new HashSet()。 } (detail)。 } } // 該訂單的總金額 (sum)。 } (order)。 bool = true。 } return bool。 } 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 ( 4)圖書顯示模塊 圖 55圖書顯示模塊類圖 ( 5)圖書 管理模塊 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 圖 56 圖書管理模塊類圖 ( 6)圖書評價模塊 圖 57 圖書評價模塊類圖 ( 7)進(jìn)貨管理模塊 圖 58進(jìn)貨管理模塊類圖 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 在此模塊中,提供了生成進(jìn)貨單 Excel 表格的功能,供管理員下載打印,方便進(jìn)貨。 關(guān)鍵代碼: // 生成 Excel public InputStream getInputStream() { // 建立對象,創(chuàng)建表頭 HSSFWorkbook wb = new HSSFWorkbook()。 HSSFSheet sheet = (sheet1)。 HSSFRow row = (0)。 HSSFCell cell = ((short) 0)。 ()。 (進(jìn)貨單號 )。 cell = ((short) 1)。 ()。 (供貨商 )。 cell = ((short) 2)。 ()。 (圖書 ISBN)。 cell = ((short) 3)。 ()。 (圖書名稱 )。 cell = ((short) 4)。 ()。 (進(jìn)價 /單價 (元 ))。 cell = ((short) 5)。 ()。 (進(jìn)貨量 /本 )。 cell = ((short) 6)。 ()。 (總額 /元 )。 cell = ((short) 7)。 ()。 (下單時間 )。 精品畢業(yè)論文、畢業(yè)設(shè)計,優(yōu)質(zhì)的論文服務(wù): 精品論文網(wǎng) 提供畢業(yè)設(shè) 計(論文)和圖文教程、視頻教程等一攬子解決方案 cell = ((short) 8)。 ()。 (備注 )。 // 查詢數(shù)據(jù)庫 ,把表中的信息寫入 Excel ListImport list = ()。 for (int
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1