• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Java Web開發(fā)中的SSH框架

    2020-01-14 12:45:25蓋志靜張志坤
    湖北農(nóng)機(jī)化 2020年8期
    關(guān)鍵詞:調(diào)用邏輯框架

    林 躍 楊 倩 蓋志靜 張志坤

    (山東科技大學(xué),山東濟(jì)南 250000)

    SSH框架的系統(tǒng)從功能上可分為三層:表示層(View)、業(yè)務(wù)邏輯層(Service)、數(shù)據(jù)持久層(Dao),便于開發(fā)人員短期時(shí)間內(nèi)搭建比較清晰、可復(fù)用性好的、利于維護(hù)的Web應(yīng)用程序。其中Struts技術(shù)實(shí)現(xiàn)控制業(yè)務(wù)跳轉(zhuǎn),Hibernate實(shí)現(xiàn)與數(shù)據(jù)庫(kù)交互,實(shí)現(xiàn)對(duì)數(shù)據(jù)的持久化工作,Spring則對(duì)Struts和Hibernate進(jìn)行統(tǒng)一的管理。

    1 Struts

    我們現(xiàn)在用的Struts框架一般來講是指Struts2框架,Struts2與Struts1兩者雖然名字相似,但設(shè)計(jì)思想有很大不同,在技術(shù)上沒有任何關(guān)系。Struts2是以WebWork為核心發(fā)展而來的,采用攔截器的機(jī)制來處理客戶端的請(qǐng)求,也正是這樣的設(shè)計(jì)方式使業(yè)務(wù)邏輯控制器和Servlet API完全脫離,降低程序的耦合性。在Struts2中,最重要的配置文件是struts.xml,需要編寫Action類來實(shí)現(xiàn)跳轉(zhuǎn),每個(gè)Action類中都有不同的方法返回不同的返回值,根據(jù)struts.xml所配置的result指向的JSP或者Action類進(jìn)行跳轉(zhuǎn)。

    2 Spring

    Spring是一款一站式開源輕量級(jí)框架,在SSH框架中扮演著“管家”的作用,它可以對(duì)Struts和Hibernate進(jìn)行統(tǒng)一的管理。Spring中有兩個(gè)核心概念分別為控制反轉(zhuǎn)(IOC)和依賴注入(DI),控制反轉(zhuǎn)就是將對(duì)象的生產(chǎn)權(quán)和創(chuàng)建權(quán)全部托管給Spring容器管理,依賴注入是指Spring創(chuàng)建對(duì)象的過程中,將對(duì)象和屬性通過配置注入到程序中。

    Spring還能實(shí)現(xiàn)對(duì)Hibernate中數(shù)據(jù)庫(kù)連接信息的配置,它的主要配置文件是ApplicationContext.xml,可以實(shí)現(xiàn)對(duì)數(shù)據(jù)源里面包括數(shù)據(jù)庫(kù)連接名、驅(qū)動(dòng)名、用戶名及密碼的配置。Spring還支持AOP編程,可以把實(shí)現(xiàn)相同功能的代碼橫向抽取出來形成公共代碼。

    3 Hibernate

    Hibernate是一個(gè)和數(shù)據(jù)庫(kù)連接,負(fù)責(zé)和數(shù)據(jù)庫(kù)打交道并完成數(shù)據(jù)的持久化工作的框架,它解決了一個(gè)核心的問題就是ORM即對(duì)象關(guān)系映射。Hibernate的使用需要配置四個(gè)方面的內(nèi)容,hibernate.cfg.xml、bean.hbm.xml、JavaBean實(shí)體類、核心業(yè)務(wù)邏輯。hibernate.cfg.xml主要配置了數(shù)據(jù)庫(kù)的連接名、驅(qū)動(dòng)名、用戶名、密碼、數(shù)據(jù)庫(kù)方言等以及實(shí)體類映射文件的引入;bean.hbm.xml稱為實(shí)體類映射文件,里面包含了實(shí)體類對(duì)象和數(shù)據(jù)庫(kù)表的對(duì)應(yīng)關(guān)系即實(shí)體類對(duì)象屬性對(duì)應(yīng)數(shù)據(jù)庫(kù)表中的字段。實(shí)體類包含三種對(duì)應(yīng)關(guān)系:一對(duì)一、多對(duì)一、多對(duì)多。在實(shí)體類映射文件中配置的過程就是把數(shù)據(jù)庫(kù)中二維表轉(zhuǎn)化為實(shí)體類對(duì)象的過程。

    在Hibernate核心業(yè)務(wù)中需要使用到一個(gè)重要的類——Session,先通過Configuration類初始化配置得到會(huì)話工廠類SessionFactory,然后再通過會(huì)話工廠類得到Session,這樣就可以通過Session的對(duì)象調(diào)用內(nèi)置的方法來實(shí)現(xiàn)對(duì)數(shù)據(jù)的增刪改查操作,調(diào)用get()/load()方法實(shí)現(xiàn)數(shù)據(jù)的查詢,調(diào)用delete()方法實(shí)現(xiàn)對(duì)數(shù)據(jù)的刪除,通過實(shí)體類的對(duì)象的set()方法加session的save()方法實(shí)現(xiàn)對(duì)數(shù)據(jù)的插入。

    4 SSH框架整合

    在Java Web開發(fā)中,三大框架SSH之間是互相關(guān)聯(lián)的。Struts利用Action類和JSP頁(yè)面配置在struts.xml中進(jìn)行展示實(shí)現(xiàn)邏輯跳轉(zhuǎn)處理;而多個(gè)不同的JavaBean形成了Service層的內(nèi)容;而Hibernate在Dao層則實(shí)現(xiàn)了數(shù)據(jù)的持久化操作,上述內(nèi)容均被統(tǒng)一配置在Spring容器中管理,從而使項(xiàng)目代碼的維護(hù)更加容易。

    5 結(jié)束語(yǔ)

    目前在國(guó)內(nèi)的大多數(shù)企業(yè)中,SSH框架編寫的項(xiàng)目依然在很多公司中的許多項(xiàng)目中存在,考慮到這些軟件、項(xiàng)目仍在運(yùn)營(yíng),直接整體換成新框架也會(huì)損失一定的成本,也不切實(shí)際,雖然新的Java Web框架在源源不斷地出現(xiàn),但SSH框架也不失為一款非常經(jīng)典且實(shí)用的框架。

    猜你喜歡
    調(diào)用邏輯框架
    刑事印證證明準(zhǔn)確達(dá)成的邏輯反思
    法律方法(2022年2期)2022-10-20 06:44:24
    框架
    邏輯
    創(chuàng)新的邏輯
    廣義框架的不相交性
    核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
    LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
    女人買買買的神邏輯
    37°女人(2017年11期)2017-11-14 20:27:40
    WTO框架下
    法大研究生(2017年1期)2017-04-10 08:55:06
    基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
    扶绥县| 通山县| 兴化市| 石狮市| 通城县| 淮南市| 洛阳市| 清远市| 台中市| 延川县| 洪江市| 荆门市| 古田县| 无锡市| 白城市| 万源市| 开平市| 卫辉市| 无棣县| 舟山市| 手机| 双柏县| 云浮市| 太康县| 陈巴尔虎旗| 黑河市| 铁岭县| 江孜县| 浙江省| 仪陇县| 富阳市| 西吉县| 聊城市| 西盟| 临颍县| 石嘴山市| 武乡县| 汕尾市| 巧家县| 深州市| 潜山县|