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

Hibernate在電子商務平臺中的應用

2009-01-01 00:00:00
商場現代化 2009年1期

[摘 要] 電子商務近些年得到了快速發展,為了使電子商務平臺的開發更快捷,更安全,我們采用JSP、Hibernate等技術,構建了一個電子商務平臺。著重研究了基于Hibernate的電子商務平臺的總體結構和實現方法。

[關鍵詞] JAVA JSP Hibernate

一、Hibernate技術介紹

Java應用程序運行時,往往把數據封裝為相互連接的對象,但是當程序結束時,這些對象就會消失在一團邏輯中,所以需要有一些保存它們的方法。甚至在編寫應用程序之前,數據就已經存在了,所以需要有讀入它們和將其表示為對象的方法。手動編寫代碼來執行這些任務不僅單調乏味、易于出錯,而且會占用整個應用程序的很大一部分開發工作量。

Hibernate是一個免費的開源Java包,它對JDBC做了輕量級封裝,不僅提供ORM映射服務,還提供數據查詢和數據緩存功能,Java開發人員可以方便地通過Hibernate API來操縱數據庫。它使得與關系數據庫打交道變得十分輕松,就像數據庫中包含每天使用的普通Java對象一樣;同時不必考慮如何把它們從數據庫表中取出(或放回到數據庫表中)。

現在,越來越多的Java開發人員把Hibernate作為企業級應用和關系數據庫之間的中間件,以節省和對象持久化有關的約30%的JDBC編程工作量。2005年,Hibernate作為優秀的類庫和組件,榮獲了第15屆Jolt大獎。

二、層次結構設計

一般的Web應用程序中,通常采用三層體系結構,如圖1所示:

表述層:提供與用戶交互的界面。業務邏輯層:實現各種業務邏輯。數據庫層:負責存放和管理應用的持久性業務信息。但是,在上圖的三層軟件結構中,業務邏輯層不僅負責業務邏輯,而且直接訪問數據庫,提供對業務數據的保存、更新、刪除和查詢操作。

在本平臺中,借助于Hibernate框架,可以把數據訪問細節和業務邏輯分開,使整個系統呈現四層體系結構,這樣可以把數據訪問作為單獨的持久化層,而業務邏輯層用JavaBeans來實現。重新分層的軟件層次結構參見圖2:

其中,持久化層封裝了數據訪問細節,圖2系統層次結構為業務邏輯層提供了面向對象的API。通過應用持久化層,可以達到以下目標:代碼可重用性高,能夠完成所有的數據庫訪問操作;如果需要的話,能夠支持多種數據庫平臺;具有相對獨立性,當持久化層的實現發生變化,不會影響上層的實現。

三、功能模塊設計

本平臺所實現的功能如下:

1.客戶界面部分

商品選購;購物車功能;查看商品詳細情況;用戶注冊;用戶登錄;查看用戶訂單信息。

2.管理界面部分

客戶管理:查看、刪除;現有商品管理:查看、修改、刪除;訂單管理:查看訂單付款,更新訂單付款,出貨狀態,刪除訂單;添加新商品;添加商品分類。

四、關鍵技術分析

由于引入了Hibernate框架,本平臺中所有對數據庫的操作都是通過Hibernate提供的面向對象的API來完成的。

1.Hibernate的初始化

在自定義的HibernateUtil類中,由靜態代碼塊負責Hibernate的初始化工作,如讀取Hibernate的配置信息,以及對象——關系映射信息,最后創建SessionFactory實例。下面具體分析初始化的步驟:

(1)創建一個Configuration的實例,Configuration類的構造方法把默認文件路徑下的hibernate.properities配置文件中的配置信息讀入到內存。

(2)調用Configuration類的addClass()方法把默認文件路徑下的Category.hbm.xml,Customer.hbm.xml,Item.hbm.xml,Order.hbm.xml文件中的映射信息讀入內存中。

(3)調用Configuration類的buildSessionFactory()方法創建一個SessionFactory實例,并把Configuration對象包含的所有配置信息拷貝到SessionFactory對象的緩存中。SessionFactory代表一個數據庫存儲,當SessionFactory對象創建后,該對象便不和Configuration對象關聯。以后對數據庫的操作都基于此SessionFactory對象。

2.利用Hibernate操作數據庫

初始化過程結束后,就可以調用SessionFactory實例的openSession方法來獲得Session實例,然后通過它執行訪問數據庫的操作。Session是一個輕量級對象。通常將每一個Session實例和一個數據庫事務綁定,也就是說,每執行一個數據庫事務,都應該先創建一個新的Session實例。如果事務執行中出現異常應該撤銷事務。不論事務成功與否都應該調用的Session的close()方法,從而釋放Session實例。

參考文獻:

[1]深入淺出Hibernate.北京:電子工業出版社,2005

[2]精通Hibernate:Java對象持久化技術詳解.北京:電子工業出版社,2005

主站蜘蛛池模板: www.91中文字幕| 午夜成人在线视频| 日本成人一区| 欧美精品一区在线看| 91精品国产91久无码网站| 97se亚洲综合| 国内老司机精品视频在线播出| 欧美性久久久久| 91九色国产在线| 亚洲无码一区在线观看| 日韩无码视频专区| 国产成人精品男人的天堂下载| 免费看一级毛片波多结衣| 日韩AV手机在线观看蜜芽| 欧美色视频日本| 欧美一道本| 亚洲性网站| 久99久热只有精品国产15| 欧美三级日韩三级| 国产精品xxx| 日韩欧美高清视频| 亚洲第一区欧美国产综合| 久久动漫精品| 性色一区| 亚洲一区二区三区麻豆| 国产理论精品| 一级毛片免费不卡在线| 四虎影院国产| 欧美在线综合视频| 一级毛片a女人刺激视频免费| 国产噜噜噜视频在线观看| 亚洲va视频| 国产精品99一区不卡| 最新国产麻豆aⅴ精品无| jizz亚洲高清在线观看| 国产日韩精品欧美一区喷| 免费人成网站在线高清| 亚洲一级毛片免费观看| 日本人妻丰满熟妇区| 九九线精品视频在线观看| 香蕉伊思人视频| 免费看一级毛片波多结衣| 国产第二十一页| 欧美日在线观看| 国产精品任我爽爆在线播放6080| 青青草原国产精品啪啪视频| 亚洲熟女偷拍| 91小视频版在线观看www| 亚洲国产成人综合精品2020| 久久久久久国产精品mv| 午夜老司机永久免费看片| 五月天综合婷婷| 91福利片| 久久99蜜桃精品久久久久小说| 青青操国产视频| 国产1区2区在线观看| 国产色爱av资源综合区| 九月婷婷亚洲综合在线| 免费在线看黄网址| 国产粉嫩粉嫩的18在线播放91| 国产欧美在线观看视频| 永久免费无码成人网站| 国产成人免费观看在线视频| 九九九久久国产精品| 亚洲天堂视频网站| 婷婷亚洲视频| v天堂中文在线| 国产成人精品一区二区| 人人91人人澡人人妻人人爽| 国产成年无码AⅤ片在线 | 视频一本大道香蕉久在线播放 | 国产你懂得| 国产视频一区二区在线观看| 日韩午夜片| jijzzizz老师出水喷水喷出| 国产91线观看| 国产亚洲高清视频| 亚洲乱伦视频| 在线精品亚洲国产| 国产在线视频福利资源站| 亚洲乱伦视频| a级毛片网|