999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Hibernate 的網(wǎng)上交易平臺的數(shù)據(jù)操作層實現(xiàn)

2012-08-16 06:30:14劉于亮
科技視界 2012年11期
關(guān)鍵詞:分類數(shù)據(jù)庫

劉于亮

(廣州港新沙港務(wù)有限公司 廣東 廣州 523147)

1 項目概況

服務(wù)器操作系統(tǒng)Windows 2003 server, 數(shù)據(jù)庫系統(tǒng)具有跨平臺的可移植性。 客戶端Windows XP 等WINDOWS 系列操作系統(tǒng)。 數(shù)據(jù)庫采用SQL Server2000 數(shù)據(jù)庫。 采用B/S 結(jié)構(gòu),構(gòu)造安全、穩(wěn)定、快速的軟件平臺。系統(tǒng)采用Java 編程,生成真正的可執(zhí)行代碼。

整套系統(tǒng)基于組件——容器模型,采用分層架構(gòu)。 數(shù)據(jù)庫服務(wù)器——業(yè)務(wù)邏輯——Web 服務(wù)器——用戶界面。 分層清晰,各層功能相對獨立,完整定義本層所需功能,形成一套子系統(tǒng),并向其他鄰接層提供函數(shù)接口。 系統(tǒng)可維護(hù)性、可擴(kuò)展性極好。

三層架構(gòu)中表示層使用JSP 網(wǎng)頁和Struts 技術(shù)框架。 業(yè)務(wù)邏輯層使用Spring 的一小部分功能做容器支持。 在數(shù)據(jù)操作層上使用Hibernate 實現(xiàn)。

2 系統(tǒng)的概要分析

網(wǎng)上交易平臺包含的模塊有:店鋪管理,包括新開店,修改店(添加、刪除、修改店鋪商品);商品管理,包括商品購買、訂單、商品分類等等;用戶管理,包括用戶資料、身份、用戶等級、用戶收藏等等;特價事件,一段時間內(nèi)一部分商品特價出售;搜索,保留所有用戶的搜索記錄;新聞,隨時更新交易平臺新聞。 其中特價事件和查詢搜索是節(jié)選出來將要具體闡述的兩個模塊。

2.1 特價事件的功能介紹

該模塊實現(xiàn)一段事件的某些商品的進(jìn)行特價銷售。 主要實現(xiàn)功能如下:

2.1.1 設(shè)定、修改、刪除、查詢特價。

2.1.2 選擇貨類編入特價事件中。

2.2 查詢搜索的功能介紹

該模塊保留一定量的用戶對商品的查詢記錄。 主要實現(xiàn)功能如下:

2.2.1 如沒有該關(guān)鍵字記錄,則增加記錄。

2.2.2 如有該關(guān)鍵字記錄,則修改記錄的搜索次數(shù)。

2.2.3 當(dāng)新增一個記錄,則刪除最后一項記錄。

3 系統(tǒng)的開發(fā)結(jié)構(gòu)

在系統(tǒng)設(shè)計過程中, 采用三層結(jié)構(gòu)模式以使表示邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)邏輯分離, 以構(gòu)建一個具有良好的可靠性、可重用性、可擴(kuò)展性和可維護(hù)性的系統(tǒng)。 下圖為系統(tǒng)的架構(gòu)和技術(shù)框架的結(jié)構(gòu)圖。

圖1 網(wǎng)上交易平臺的架構(gòu)和技術(shù)框架的結(jié)構(gòu)圖

以上流程,說明在三層架構(gòu)下,一個完整的頁面是怎樣生成的,數(shù)據(jù)是怎么流轉(zhuǎn)的。 例如,在主頁看到一個特價事件的頁面,然后點擊,就會看到一個此特價事件下的所有商品列表的頁面。

A 首先, 從表示層中的JSP 主頁中的特價事件點擊鏈接里面得到該特價事件的ID, 此ID 將會根據(jù)Struts 配置文件的ActionMapping 指向傳到對應(yīng)的action 中。

B 該action 在收集了所需要的數(shù)據(jù),也就是特價事件ID后,由業(yè)務(wù)邏輯層講具體事務(wù)對象化成各類JavaBean,并調(diào)用數(shù)據(jù)操作層提供的接口, 調(diào)用getWareByPromotionEventID(ID)方法,特價事件ID 為參數(shù)作傳遞,該方法的功能就是根據(jù)特價事件ID 而得到對應(yīng)此特價事件ID 的所有商品,返回的是商品ware 的集合wareList。

C、D 在數(shù)據(jù)操作層使用數(shù)據(jù)操作層技術(shù)框架實現(xiàn)了get-WareByPromotionEventID(ID)這個方法,對數(shù)據(jù)庫進(jìn)行操作,并得到了wareList。

E 如果此操作層方法沒有錯誤, 那么在action 中調(diào)用此方法所返回的結(jié)果就是所需要的商品集合wareList。 并且由業(yè)務(wù)邏輯層支持和收集,并傳到表示層中。

F 接著action 在接收到想得到的結(jié)果, 也就是wareList后,根據(jù)配置文件的ActionForward 指向?qū)areLsit 傳遞到指定的表示層JSP 頁面中。 最后寫一個循環(huán),調(diào)用Struts 標(biāo)簽,方便地將每個ware 實體想顯示的屬性在頁面中顯示出來,例如商品名稱,簡介,價錢等等。

從以上說明可以見到,三層架構(gòu)既相互獨立又存在數(shù)據(jù)交流。JAVA 的編程理念就是面向?qū)ο螅虼耍褂肑2EE 的三層架構(gòu)下,一般情況下,查詢操作返回的都是實體與實體的集合。 而另外增刪改的操作則是返回是否操作成功的true 或者false,而有些技術(shù)框架會提供異常拋出機(jī)制,能自動拋出異常。

由于三層架構(gòu)相對獨立,如上例所說明的那樣,在數(shù)據(jù)操作層中,需要做的就是根據(jù)業(yè)務(wù)邏輯層給出的根據(jù)什么和得到什么,來寫出DAO 方法去實現(xiàn)。 因此,在比較數(shù)據(jù)操作層技術(shù)的時候,可以拋開表示層與業(yè)務(wù)層的業(yè)務(wù)流程,專注于數(shù)據(jù)操作層的方法實現(xiàn)上。

4 數(shù)據(jù)庫需求

經(jīng)過需求分析后, 在詳細(xì)設(shè)計時定下了以下表及其作用。 其他的表與將要模擬實現(xiàn)的部分沒有關(guān)系,因此不列出了。

品牌表,即商品對應(yīng)的牌子;一級分類表,與其他3 級分類都是一對多;一級分類與品牌是多對多的關(guān)系,需一個中間表;二級分類表,與一級分類是多對一,與三四級分類是一對多;新聞表,記錄易家購的所有新聞;特價事件表,每一段時間都會有一批商品進(jìn)入特價期間,特價事件就是一批特價商品的集合,與一級分類、商品都有關(guān)聯(lián);搜索記錄表,記錄所有商品的搜索記錄;商品表,記錄所有商品信息,與四個分類,品牌都有關(guān)聯(lián);商品種類表。

5 具體實現(xiàn)

5.1 數(shù)據(jù)實體范例

PromotionEvent 的對象定義:

5.2 對數(shù)據(jù)庫的DAO 操作范例

Hibernate 的實體操作:

以上代碼可以看到,只要設(shè)定好對數(shù)據(jù)庫的操作,執(zhí)行以后,返回的就是所需要的并且已經(jīng)賦值好的實例。 這是由于之前已經(jīng)配置好了對象與數(shù)據(jù)表的映射,所有對數(shù)據(jù)庫操作后所返回的數(shù)據(jù),Hibernate 會自動將其賦予對應(yīng)對象的對應(yīng)屬性中,這樣,能省去大量冗余的代碼,程序看起來變得簡潔,對于開發(fā)與修改來說,是相當(dāng)大的幫助。 就算需要臨時對promotionEvent 這個實體增加廣告名稱屬性advName,那么就要在對數(shù)據(jù)庫,對象的定義進(jìn)行修改之后,以后的每次的操作都能得到已經(jīng)擁有advName 屬性的promotionEvent 實體。

如果使用了Spring 對Hibernate 的支持,程序更是簡潔。下面的程序就使用了Spring 容器支持功能后的實體操作。

對Search 表的操作:

猜你喜歡
分類數(shù)據(jù)庫
分類算一算
垃圾分類的困惑你有嗎
大眾健康(2021年6期)2021-06-08 19:30:06
分類討論求坐標(biāo)
數(shù)據(jù)分析中的分類討論
教你一招:數(shù)的分類
數(shù)據(jù)庫
財經(jīng)(2017年15期)2017-07-03 22:40:49
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 国产一区二区福利| 亚洲免费毛片| 欧美一级专区免费大片| 九色视频线上播放| av天堂最新版在线| 农村乱人伦一区二区| 韩日无码在线不卡| av在线人妻熟妇| 亚洲美女一级毛片| 精品人妻AV区| 国产交换配偶在线视频| 亚洲天堂色色人体| 天天做天天爱夜夜爽毛片毛片| 日韩在线成年视频人网站观看| 亚洲中文在线视频| 91香蕉视频下载网站| 91麻豆国产视频| 毛片免费在线| 特级毛片8级毛片免费观看| 国产精品久久精品| 国产精品视频系列专区| 亚洲一级毛片在线观| 中文字幕乱码中文乱码51精品| 亚洲AⅤ永久无码精品毛片| 成人韩免费网站| 特级毛片免费视频| 国产三级视频网站| 特级做a爰片毛片免费69| 国产玖玖视频| 欧美精品成人一区二区视频一| 精品视频一区二区三区在线播| 高清亚洲欧美在线看| 国产h视频免费观看| 99re这里只有国产中文精品国产精品| 最新加勒比隔壁人妻| 国产亚洲精品无码专| 激情影院内射美女| 国产精品蜜芽在线观看| 亚洲天堂网2014| 亚洲精品大秀视频| 国产激爽大片高清在线观看| 毛片久久网站小视频| 亚洲成人动漫在线观看| 女高中生自慰污污网站| 日韩精品无码一级毛片免费| 蜜臀AVWWW国产天堂| 国产理论精品| 久青草国产高清在线视频| 欧美区一区| 99久久国产精品无码| 久久精品人人做人人爽| 亚洲男人天堂久久| 福利视频99| 日本国产精品一区久久久| 久久伊人久久亚洲综合| 国产欧美视频综合二区| 中文字幕伦视频| 91色国产在线| 欧美日韩第三页| 五月丁香伊人啪啪手机免费观看| 欧美色视频在线| 国产在线一区二区视频| 国产在线视频欧美亚综合| 亚洲区视频在线观看| 成年人福利视频| 国产人人乐人人爱| 一级毛片在线播放免费| 欧美精品v欧洲精品| 国产在线观看第二页| 国产AV无码专区亚洲A∨毛片| 国产视频大全| 91美女视频在线| 精品91自产拍在线| 人妻无码中文字幕一区二区三区| 亚洲欧洲日产无码AV| 一本大道香蕉中文日本不卡高清二区| 噜噜噜久久| 国产无遮挡猛进猛出免费软件| 欧美有码在线| 欧美色伊人| 伊伊人成亚洲综合人网7777| 青青操国产|