利用開源框架Struts+Hibernate實(shí)現(xiàn)Web應(yīng)用程序_第1頁
利用開源框架Struts+Hibernate實(shí)現(xiàn)Web應(yīng)用程序_第2頁
利用開源框架Struts+Hibernate實(shí)現(xiàn)Web應(yīng)用程序_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

利用開源框架Struts+Hibernate實(shí)現(xiàn)Web應(yīng)用程序

摘要:本文主要介紹了利用目前的開源框架來開發(fā)一MVC結(jié)構(gòu)Web程序的主要過程,對(duì)作為Struts與Hibernate核心的配置文件作了簡單介紹,最后提出了在開發(fā)類似項(xiàng)目時(shí)可能會(huì)遇到的一些問題和解決方案。關(guān)鍵詞:Web;開源框架;解決方案;Struts;Hibernate;MVC;計(jì)算機(jī)一、概述大多數(shù)Web應(yīng)用在職責(zé)上至少可被分成四層,表示層、持久層、業(yè)務(wù)層和域模塊層,每一層相互獨(dú)立,在功能上與其他層互不混合,這樣為程序的后期維護(hù)及擴(kuò)充提供了方便,而在Web應(yīng)用的分層設(shè)計(jì)中,MVC模式成為一種十分流行的結(jié)構(gòu),Struts則是MVC模式的一種具體實(shí)現(xiàn),他讓開發(fā)人員可以把主要精力集中在如何解決實(shí)際業(yè)務(wù)處理問題上,同時(shí)Struts框架也允許開發(fā)人員根據(jù)實(shí)際需求進(jìn)行擴(kuò)展和定制,從而更好地適應(yīng)用戶的需要。在數(shù)據(jù)持久層上,Hibernate是目前最好的框架之一,Hibernate不僅管理Java類到數(shù)據(jù)庫表的映射,還提供數(shù)據(jù)查詢和獲取數(shù)據(jù)的方法,可以大幅減少開發(fā)時(shí)人工使用SQL和JDBC處理數(shù)據(jù)的時(shí)間。Struts架構(gòu)與Hibernate相結(jié)合實(shí)現(xiàn)Web應(yīng)用已成為WebService十分流行的解決方案。下面我們將簡要介紹一下采用Struts+Hibernate實(shí)現(xiàn)Web應(yīng)用的主要方法。二、數(shù)據(jù)庫設(shè)計(jì)及持久化大多數(shù)Web應(yīng)用都要涉及到數(shù)據(jù)庫,數(shù)據(jù)庫的設(shè)計(jì)是系統(tǒng)設(shè)計(jì)首先要考慮的問題,數(shù)據(jù)庫設(shè)計(jì)得是否合理對(duì)系統(tǒng)的設(shè)計(jì)有著直接的影響,數(shù)據(jù)庫如果設(shè)計(jì)的不好,有可能會(huì)使整個(gè)系統(tǒng)在最后階段推倒重建。這里我們不打算詳細(xì)討論數(shù)據(jù)庫的設(shè)計(jì)細(xì)節(jié),只要遵循一般的數(shù)據(jù)庫設(shè)計(jì)原則即可。包括找出所有實(shí)體,建立關(guān)系,畫ER圖,建立數(shù)據(jù)庫表等。持久化是通過Hibernate來實(shí)現(xiàn)的,Hibernate對(duì)數(shù)據(jù)庫的增加、刪除、更新、查找操作進(jìn)行了封裝,使程序員可以使用面向?qū)ο蟮姆绞絹碓O(shè)計(jì)程序,而不用為寫大量的SQL語句而苦惱。因此我們需要建立相應(yīng)的配置文件來幫助程序完成數(shù)據(jù)持久化,其中包括一個(gè)Hibernate基本配置文件和若干個(gè)數(shù)據(jù)庫表與基本Java類對(duì)應(yīng)的配置文件,以用戶登錄系統(tǒng)為例,二配置文件主要內(nèi)容如下:hibernate.cfg.xml:(使用Mysql數(shù)據(jù)庫)<?xmlversion='1.0'encoding='utf-8'?><!DOCTYPEhibernate-configurationPUBLIC"-//Hibernate/HibernateConfigurationDTD//EN""/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><propertyname="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property><propertyname="hibernate.connection.url">jdbc:mysql:///user</property><propertyname="hibernate.connection.username">root</property><propertyname="hibernate.connection.password"></property><propertyname="hibernate.connection.pool_size">100</property><propertyname="dialect">org.hibernate.dialect.MySQLDialect</property><!--Mappingfiles--><mappingresource="user.hbm.xml"/></session-factory></hibernate-configuration>User.hbm.xml:<?xmlversion="1.0"?><!DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD2.0//EN""/hibernate-mapping-2.0.dtd"><hibernate-mapping><classname="hibernate.User"table="user"><idname="id"type="java.lang.String"column="id"><generatorclass="assigned"/></id><propertyname="name"type="java.lang.String"column="name"not-null="true"length="20"/><pr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論