日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Action Service Dao三层的功能划分

發布時間:2024/9/5 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Action Service Dao三层的功能划分 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.?Action/Service/DAO簡介:

Action是管理業務(Service)調度和管理跳轉的。
?
??????Service是管理具體的功能的。
?
??????Action只負責管理,而Service負責實施。
?
??????DAO只完成增刪改查,雖然可以1-n,n-n,1-1關聯,模糊、動態、子查詢都可以。但是無論多么復雜的查詢,dao只是封裝增刪改查。至于增刪查改如何去實現一個功能,dao是不管的。
?
??????總結這三者,通過例子來解釋:
?
??????Action像是服務員,顧客點什么菜,菜上給幾號桌,都是ta的職責;
?
??????Service是廚師,action送來的菜單上的菜全是ta做的;
?
??????Dao是廚房的小工,和原材料打交道的事情全是ta管。? ? ?

? ? ?

??????相互關系是,小工(dao)的工作是要滿足廚師(service)的要求,廚師要滿足服務員(action)轉達的客戶(頁面用戶)的要求,服務員自然就是為客戶服務嘍。
?
??????現在最基本的分層方式,結合了SSH架構。Model層就是對應的數據庫表的實體類。Dao層是使用了Hibernate連接數據庫、操作數據庫(增刪改查)。Service層:引用對應的Dao數據庫操作。Action層:引用對應的Service層,在這里結合Struts的配置文件,跳轉到指定的頁面,當然也能接受頁面傳遞的請求數據,也可以做些計算處理。
?
??????以上的Hibernate,?Struts,都需要注入到Spring的配置文件中,Spring把這些聯系起來,成為一個整體。
?


2.?三大框架Struts/Hibernate/Spring
?
??????簡單地說:
?
?????Struts——控制用的;
?
?????Hibernate——操作數據庫的;
?
?????Spring——解耦用的。
?
?????詳細地說:
?
??????Struts在SSH框架中起控制的作用,其核心是Controller,即ActionServlet,而ActionServlet的核心就是Struts-config.xml,主要控制邏輯關系的處理。
?
??????Hibernate是數據持久化層,是一種新的對象、關系的映射工具,提供了從Java類到數據表的映射,也提供了數據查詢和恢復等機制,大大減少數據訪問的復雜度。把對數據庫的直接操作,轉換為對持久對象的操作。
?
??????Spring是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架。面向接口的編程,由容器控制程序之間的依賴關系,而非傳統實現中,由程序代碼直接操控。這就是所謂“控制反轉”的概念所在:(依賴)控制權由應用代碼中轉到了外部容器,控制權的轉移,是所謂反轉。依賴注入,即組件之間的依賴關系由容器在運行期決定,形象地說,即由容器動態地將某種依賴關系注入到組件之中,起到的主要作用是解耦。
?
??????Struts、Spring、Hibernate在各層的作用:
?
????(1)Struts負責Web層:ActionFormBean接收網頁中表單提交的數據,然后通過Action進行處理,再Forward到對應的網頁。在Struts-config.xml中定義<action-mapping>,ActionServlet會加載。
?
????(2)?Spring負責業務層管理,即Service(或Manager)。
??Service為action提供統計的調用接口,封裝持久層的DAO;?
?可以寫一些自己的業務方法;?
?統一的Javabean管理方法;?
?聲明式事務管理;?
?集成Hibernate。?

????(3)Hibernate,負責持久化層,完成對數據庫的crud操作。提供OR/Mapping。它由一組.hbm.xml文件和POJO,是跟數據庫中的表相對應的。然后定義DAO,這些是跟數據庫打交道的類,它們會使用PO。
?
?
?
3.?框架業務邏輯分析:
?
???????在Struts?+?Spring?+?Hibernate的系統中,
?
???????對象的調用流程是:JSP—Action—Service—DAO—Hibernate。
?
???????數據的流向是:ActionFormBean接受用戶的數據,Action將數據從ActionFormBean中取出,封裝成VO或PO,再調用業務層的Bean類,完成各種業務處理后再Forward。而業務層Bean收到這個PO對象之后,會調用DAO接口方法,進行持久化操作。
?
??????SSH框架的優點:
?
??????Hibernate的最大好處就是根據數據庫的表,反向生成實體類,并且還有關系在里面,還有就是它對數據的操作也很方便;
?
??????Spring,省去了在類里面new對象的過程,把這個調用與被調用的關系直接展示到了配置文件里,做任何操作都變得簡單了。
?
??????簡單流程舉例說明:
?
??????程序框架搭建好,并且把各種jar包導入后,就開始進行業務邏輯分析——
?
??????假設一個最基本的注冊功能:頁面有兩個文本框,一個用戶名(username)和一個密碼(password)。以QQ注冊網頁說明,這里以昵稱和密碼為代表進行舉例。
?


????????首先是action層:它是負責在頁面和程序之間傳輸數據的,還有作用是做頁面跳轉。頁面由用戶填寫表單數據,點擊提交按鈕,頁面的表單數據由Hibernate自動封裝到該頁面表單所對應的ActionFrom(ActionFrom跟實體類不是一個東西,ActionFrom是頁面有什么值,類里就寫什么屬性,是用來封裝表單數據用的;而實體類是完全按照數據庫的字段生成的,實體類可以當做ActionFrom用,但ActionFrom絕對不可以當做實體類用),這樣表單數據就以ActionFrom對象的形式在Action的點擊“提交按鈕”執行的那個方法里存在了。這個時候需要做的就是把表單數據存入數據庫中。此時,Action的功能告一段落,接著是把數據傳入BIZ層。
?
????????BIZE層(業務邏輯層):負責的是對數據的處理。如果沒有數據處理任務的話,此層只做單純的數據傳遞作用,而后又到了DAO層。
?
????????DAO層(數據庫操作層):負責對數據向數據庫增刪改查的操作。
?
????????在該注冊的框架中,如果不使用Spring的話,每個層之間的數據傳遞都需要new一個調用該層數據的類的實例。而使用了Spring的話,需要做的就是把DAO層和BIZ層的每個類都寫一個接口類,接口類里寫實現類的方法,在調用的時候不new對象,直接用對象點(.)方法就可以,別忘了對每個對象加上set/get方法。

轉載于:https://www.cnblogs.com/heisenbergXu/p/7403171.html

總結

以上是生活随笔為你收集整理的Action Service Dao三层的功能划分的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91社区在线播放 | 一区二区三区精品在线 | 想要视频在线 | 日本乱子伦 | 色噜噜网站 | 欧美aaa一级片 | 国产卡一卡二在线 | 久久久香蕉视频 | 韩国色网| 射射色| 欧美激情视频一区二区三区在线播放 | 操网 | 成人啪啪18免费游戏链接 | 日韩在线第三页 | 午夜福利视频 | 亚洲成av人在线观看 | 91九色蝌蚪 | 都市乱淫| 少妇肥臀大白屁股高清 | 国产精品资源网 | 久热精品在线视频 | 欧美20p | 中国老太婆性做爰 | 国产成人久久77777精品 | 麻豆视频传媒入口 | 视频二区中文字幕 | 一区二区三区激情 | 免费一级特黄特色毛片久久看 | 不卡久久 | www成人啪啪18软件 | 午夜激情免费 | 午夜欧美福利 | 欧美刺激性大交 | 日韩高清在线一区 | 国产精品成人一区二区 | 中文文字幕文字幕高清 | 动漫av在线播放 | 重口另类| 极品探花在线观看 | 337p日本大胆噜噜噜鲁 | 人人妻人人澡人人爽 | 中出在线视频 | 成人av片在线观看 | 第一福利视频 | 中文字幕乱码在线观看 | 日韩av高清 | 在线免费观看黄色片 | 国产美女精品 | 国产精品日本 | www.蜜桃av| 亚洲免费一二三区 | 欧美视频直播网站 | 男人的天堂av网站 | 一区二区三区免费在线观看视频 | 国产精品欧美激情在线播放 | 丝袜ol美脚秘书在线播放 | 国产激情在线视频 | 怡红院成永久免费人全部视频 | 精品国产乱码久久久久久预案 | 欧美日韩国产片 | 金瓶狂野欧美性猛交xxxx | jizz国产在线 | 欧美视频导航 | 91精品人妻一区二区三区果冻 | 中文字幕成人在线观看 | 中国av片 | 国产又粗又黄又爽 | 超碰在线99 | 熟妇毛片 | 黄色片子看看 | 夜夜操操操| 怡红院男人的天堂 | 国产欧美一区二区三区在线老狼 | 精品久久福利 | 乱码一区二区三区 | 欧美日韩一区二区三区四区五区 | 日韩第二页| 涩涩涩涩av | 欧美成人福利视频 | 精品久久ai | 日韩欧美在线一区二区三区 | 欧美日韩成人在线播放 | 最新欧美日韩 | 国产日韩在线免费观看 | 国产一二三区在线视频 | 人妻夜夜爽天天爽 | 欧美性爱精品在线 | 香蕉av在线 | 一级裸体视频 | 悟空影视大全免费高清观看在线 | jlzzjizz在线播放观看 | 少妇精品一区二区 | 美女户外露出 | 精品人妻一区二区乱码 | 亚洲一区中文字幕在线 | 九色porny视频 | a免费视频 | 欧美在线aa | 久久婷色 |