freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于j2ee技術(shù)的團(tuán)購(gòu)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)(完整版)

  

【正文】 在進(jìn)行 Hibernate 性能優(yōu)化時(shí)需要從以下幾個(gè)方面考慮:數(shù)據(jù)庫(kù)設(shè)計(jì)調(diào)整、 HQL 優(yōu)化、正確使用 API(如根據(jù)不同的業(yè)務(wù)類型選用不同的集合及查詢 API)、配置參數(shù)(日志、查詢緩存、fetch_size、 batch_size 等)、映射文件優(yōu)化 (ID 生成策略、二級(jí)緩存、延遲加載、關(guān)聯(lián)優(yōu)化 )、一級(jí)緩存優(yōu)化、二級(jí)緩存優(yōu)化與事務(wù)控制策略。最后 ORM 在力圖為關(guān)系型數(shù)據(jù)庫(kù)披上一件美麗的面向?qū)ο蟮耐庖聲r(shí),為關(guān)系型數(shù)據(jù)庫(kù)添加了本應(yīng)屬于面向?qū)ο髷?shù)據(jù)庫(kù)的功能,例如透明持久化、面向?qū)ο蟛樵冋Z(yǔ)言等,在面向?qū)ο缶幊陶Z(yǔ)言和關(guān)系型數(shù)據(jù)庫(kù)之間找到了一個(gè)很好的結(jié)合點(diǎn)。 使用 ORM,應(yīng)用程序與 ORM API 和領(lǐng)域模型類交互,并從底層的 SQL/JDBC中被抽象出來(lái)。 Transaction 接口 Transaction 接口負(fù)責(zé)事務(wù)相關(guān)的操作。同時(shí), Hibernate 的 session 不同于 JSP 應(yīng)用中的 HttpSession。它成功地實(shí)現(xiàn)了透明持久化,以面向?qū)ο蟮?HQL 封裝了 SQL,為開發(fā)人員提供了一個(gè)簡(jiǎn)潔、靈活且面向?qū)ο蟮臄?shù)據(jù)訪問接口。一種是 Action 向視圖組件輸出數(shù)據(jù)信息,然后由試圖組件把這些數(shù)據(jù)信息顯示出來(lái);另一種是 Action 并沒有向視圖組件輸出數(shù)據(jù)信息,只是根據(jù)處理結(jié)果進(jìn)行簡(jiǎn)單的頁(yè)面跳轉(zhuǎn)。核心控制器主要負(fù)責(zé)攔截所有客戶端的請(qǐng)求,作為一個(gè) Filter 通過(guò) 文件被加入到了 Web 應(yīng)用當(dāng)中,當(dāng)有客戶端請(qǐng)求到達(dá)時(shí),他就會(huì)進(jìn)行攔截,然后將客戶端請(qǐng)求轉(zhuǎn)發(fā)給相應(yīng)的業(yè)務(wù)邏輯控制器 Action 進(jìn)行處理。依賴注入的支持也使測(cè)試變得更簡(jiǎn)單 捕獲輸入 Struts1 使用 ActionForm 對(duì)象來(lái)捕獲輸入,和 Action 一樣,所有的 ActionForm 必須擴(kuò)展基類。 Struts1的一個(gè)共有的問題是面向抽象類編程而不是面向接口編程 Struts2 的 Action 類實(shí)現(xiàn)了一個(gè) Action 接口,連同其他接口一起來(lái)實(shí)現(xiàn)可選擇和自定義的服務(wù)。還給出了部分頁(yè)面效果的展示,并就開發(fā)過(guò)程中所用到的單元測(cè)試做了概要描述。 第二章系統(tǒng)相關(guān)技術(shù)及應(yīng)用心得,本章針對(duì)本文所涉及到的相關(guān)技術(shù)做了相對(duì)較為詳細(xì)的探討研究, Struts Hibernate和 Spring作為目前比較成熟的 J2EE輕量級(jí)框架,本章分別就其體系結(jié)構(gòu)、工作原理、性能和應(yīng)用前景做了深入的分析。控制層則主要將系統(tǒng)內(nèi)部的數(shù)據(jù)集中起來(lái)進(jìn)行分發(fā)轉(zhuǎn)向處理,這樣更加易于程序的管理和 維護(hù)。 J2EE 框架 所謂框架,對(duì)于 java 來(lái)說(shuō)其實(shí)就是基于面向?qū)ο筌浖?fù)用技術(shù)的能夠解決特定領(lǐng)域一系列相關(guān)問題的抽象設(shè)計(jì)的類的集合,簡(jiǎn)單地說(shuō),就是應(yīng)用開發(fā)中的一組相互協(xié)作的類。但對(duì)于 J2EE 平臺(tái)來(lái)說(shuō),解決這些問題,那自然是不在話下。 在國(guó)內(nèi),這股電子商務(wù)風(fēng)潮也刮得正勁,因此,在商家和用戶積極參與到團(tuán)購(gòu)活動(dòng)中來(lái)時(shí),如何確保提供團(tuán)購(gòu)服務(wù)的這個(gè)電子商務(wù)網(wǎng)絡(luò)平臺(tái)的高安全性、高可靠性、高穩(wěn)定性和高靈活可擴(kuò)展性是擺在電子商務(wù)網(wǎng)絡(luò)平臺(tái)開發(fā)提供者眼前的一個(gè)重要課題。 SSH framework。 本文 結(jié)合自己的開發(fā)使用經(jīng)驗(yàn),詳細(xì)地分析了以上技術(shù)的工作原理、性能分析、應(yīng)用場(chǎng)景及未來(lái)的應(yīng)用前景。 and then made needs analysis of the whole purchase system, clarity of the overall needs of businesses and users。 而隨著團(tuán)購(gòu)網(wǎng)站的日益劇增,消費(fèi)群體的不斷擴(kuò)大,不得不說(shuō),團(tuán)購(gòu)網(wǎng)站在網(wǎng)絡(luò)大潮中已經(jīng)占領(lǐng)了一席之地。如果該系統(tǒng)面對(duì)大量用戶的高并發(fā)實(shí)時(shí)訪問,時(shí)不時(shí)地丟失點(diǎn)用戶數(shù)據(jù)甚至系統(tǒng)崩潰,那種代價(jià)對(duì)于運(yùn)營(yíng)上來(lái)說(shuō)可以說(shuō)是致命的。將系統(tǒng)進(jìn)行有效地組織、分而治之的分層思想是計(jì)算機(jī)領(lǐng)域中非常重要的一種思想,在這種先進(jìn)的分層思想的指導(dǎo)下,我們可以將具體問題割裂開來(lái),細(xì)化分為多個(gè)小問題來(lái)應(yīng)對(duì),這樣更易于控制、擴(kuò)展和資源的分配。 C 代 Control,即控制層,用來(lái)對(duì)系統(tǒng)數(shù)據(jù)的流向進(jìn)行控制。它主要基于 J2EE 平臺(tái),整合了 StrutsHibernate、 Spring 三大框架,結(jié)合了 MVC 設(shè)計(jì)模式對(duì)整個(gè)站點(diǎn)進(jìn)行系統(tǒng)架構(gòu)。 第四章 WEB 系統(tǒng)架構(gòu),本章從整個(gè) WEB 站點(diǎn)的架構(gòu)層面就系統(tǒng)的架構(gòu)設(shè)計(jì)和實(shí)現(xiàn)做了詳細(xì)的介紹。 WebWork 是在對(duì) Struts1 的框架進(jìn)行了革命性改進(jìn),引進(jìn)了不少新的思想、概念和功能之后所形成的一種更為優(yōu)秀的 MVC 框架。 Servlet 上下文被表現(xiàn)為簡(jiǎn)單的 Maps,允許 Action 被獨(dú)立地測(cè)試。 Struts1使用 Commons Beanutils 來(lái)進(jìn)行 類型轉(zhuǎn)換。 Struts2 采用了 JavaBean 的風(fēng)格,即要訪問數(shù)據(jù),就要給每個(gè)屬性都提供一個(gè) getter 和 setter 方法。 作為 Apache 用 Struts 和 WebWork 組合出來(lái)的新產(chǎn)品,引進(jìn)了不少新思想、概念和功能,使得其在目前 大量的開源 MVC 框架中呈現(xiàn)一個(gè)強(qiáng)勁的上升勢(shì)頭。 Session 接口 Session 接口負(fù)責(zé)執(zhí)行被持久化對(duì)象的 CRUD 操作 (CRUD 的任務(wù)是完成與 數(shù)據(jù)庫(kù) 的交流,包含了很多常見的 SQL 語(yǔ)句。需要注意的是 SessionFactory 并不是輕量級(jí)的,因?yàn)橐话闱闆r下,一個(gè)項(xiàng)目通常只需要一個(gè) SessionFactory 就夠,當(dāng)需要操作 多個(gè)數(shù)據(jù)庫(kù)時(shí),可以為每個(gè)數(shù)據(jù)庫(kù)指定一個(gè) SessionFactory。 ORM 本質(zhì)上是把數(shù)據(jù)從一種表示法 (可逆 )轉(zhuǎn)化為另一種表示法進(jìn)行工作,這意味著將損失某些性能。另外,作為一種輕量級(jí)的對(duì)象持久化解決方案, ORM 既可以運(yùn)行在容器 (如 Spring)管理的環(huán)境中,使用容器提供的數(shù)據(jù)庫(kù)連接池和事物管理機(jī)制等服務(wù);也可以脫離容器,在無(wú)容器管理的環(huán)境下運(yùn)行,這時(shí) ORM 將使用自身提供的數(shù)據(jù)庫(kù)連接池和事物管理機(jī)制等服務(wù)。它可以和多種 Web服務(wù)器或者應(yīng)用服務(wù)器良好集成,使得開發(fā)者可以根據(jù)不同的需要來(lái)選擇 Web服務(wù)器。然而, Spring 用途不僅限于服務(wù)器端的開發(fā),從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何 Java 應(yīng)用都可以從中受益。 BeanFactory使用控制反轉(zhuǎn) (IoC)模式將應(yīng) 用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開。異常層次結(jié)構(gòu)簡(jiǎn)化了錯(cuò)誤處 理,并且極大地降低了需要編寫的異常代碼數(shù)量 (例如打開和關(guān)閉連 接 )。通 過(guò)策略接口, MVC框架變成為高度可配置的, MVC容納了大量視圖技術(shù),其中包括 JSP、 Velocity、 Tiles、 IText 和 POI。 構(gòu)造注入:指通過(guò)構(gòu)造方法來(lái)完成依賴關(guān)系的設(shè)定,而不是通過(guò) setter()方法。位于 AOP 工具核心的是連接點(diǎn)模型,提供了一種機(jī)制,可以識(shí)別出在哪里發(fā)生了橫切。通過(guò)這個(gè)對(duì)象,頁(yè)面 JavaScript 可在不重載頁(yè)面的情況與 Web 服務(wù)器交換數(shù)據(jù)。 Ajax 不需要任何瀏覽器插件,但需要用戶允許 JavaScript 在瀏覽器上執(zhí)行。 AJAX 前景非常樂觀,可以提高系統(tǒng)性能,優(yōu)化用戶界面 。從系統(tǒng)的升級(jí)和維護(hù)方面考慮,采用 Struts2, Spring和 Hibernate三種開源框架,這樣系統(tǒng)分層清晰,便于維護(hù)和擴(kuò)展。 (1) 瀏覽團(tuán)購(gòu)信息模塊,這個(gè)模塊算是整個(gè)系統(tǒng)的基礎(chǔ),該模塊結(jié)合了 CSS、 JavaScript、 Ajax 等 Web 技術(shù)和服務(wù)端程序?qū)λ袌F(tuán)購(gòu)信息進(jìn)行了動(dòng)態(tài)顯示。 (9) 商家申請(qǐng)舉行團(tuán)購(gòu)模塊 ,當(dāng)有線下商家想在本站點(diǎn)舉行團(tuán)購(gòu)活動(dòng)時(shí),可以在本模塊提交相應(yīng)的團(tuán)購(gòu)申請(qǐng)信息。 C/S 模式主要由客戶應(yīng)用程序 (Client)、服務(wù)器管理程序 (Server)和中間件(Middleware)三個(gè)部件組成。瀏覽器將 HTML 代碼轉(zhuǎn)化成圖文并茂的網(wǎng)頁(yè)。無(wú)論用戶規(guī)模有多大,有 多少分支機(jī)構(gòu)都不會(huì)增加任何維護(hù)升級(jí)的工作量,所有的操作只需要針對(duì)服務(wù)器進(jìn)行。利用該系統(tǒng)平臺(tái),網(wǎng)購(gòu)愛好者可以隨意選擇自己喜歡且價(jià)格優(yōu)惠的商品下單,方便快捷地進(jìn)入實(shí)體店消費(fèi),并將消費(fèi)后的感受通 過(guò)本平臺(tái)及時(shí)地反饋給商家,達(dá)到顧客與商家互利共通的局面。 Struts2 本身就屬于一個(gè)成熟的 MVC 框架,它其中的 Action 類就屬于模型層的業(yè)務(wù)邏輯模型控制器,本系統(tǒng)中的各種持久層的實(shí)例類就屬于模型層的數(shù)據(jù)模型,前臺(tái)頁(yè)面就屬于其視圖層,其核心控制器類就充當(dāng)著轉(zhuǎn)發(fā)各種請(qǐng)求的 控制層角色。在本團(tuán)購(gòu)系統(tǒng)中主要用于用戶的登錄和注冊(cè)的動(dòng)態(tài)驗(yàn)證。 Hibernate 在整個(gè)系統(tǒng)流程中應(yīng)該是處于 MVC 模式中的模型層,向上負(fù)責(zé)和本系統(tǒng)模型層的業(yè)務(wù)邏輯模型(同時(shí)也屬表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)持久層這三層架構(gòu)中的業(yè)務(wù)邏輯層),即 XxxBizImpl 類的方法進(jìn)行數(shù)據(jù)互通;向下通過(guò) ORM 25 技術(shù)負(fù)責(zé)把模型層中的數(shù)據(jù)模型(同時(shí)也屬三層架構(gòu)中的數(shù)據(jù)持久層),即本系統(tǒng)數(shù)據(jù)庫(kù)中每張表所對(duì)應(yīng)的的數(shù)據(jù) Bean 中的數(shù)據(jù)記錄給持久化到數(shù)據(jù)庫(kù)中。 24 系統(tǒng)架構(gòu)的總體分析與實(shí)現(xiàn) 架構(gòu)分析 根據(jù)之前架構(gòu)設(shè)計(jì)的總體目標(biāo)要求,對(duì) Struts、 Spring 和 Hibernate 的 J2EE架構(gòu)進(jìn)行具體設(shè)計(jì)。 但是,采用 B/S 模型的應(yīng)用系統(tǒng)也有一個(gè)非常明顯不足 應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷比較重。這個(gè)后臺(tái)就是第二層的 Web 服務(wù)器。服務(wù)器程序負(fù)責(zé)有效地管理系統(tǒng)資源,如管理一個(gè)信息數(shù)據(jù)庫(kù),其主要工作是當(dāng)多個(gè)客戶并發(fā)地請(qǐng)求服務(wù)器上的相同資源時(shí),對(duì)這些資源進(jìn)行最優(yōu)化管理。 (11) 商品信息維護(hù)模塊,系統(tǒng)管理員可以及時(shí)對(duì)各種商品的數(shù)據(jù)信息進(jìn)行更新維護(hù)。 21 (3) 注冊(cè)模塊,這個(gè)模塊是針對(duì)那些初次光顧本站點(diǎn)并想?yún)⑴c團(tuán)購(gòu)的網(wǎng)友所設(shè)計(jì)的。 系統(tǒng)需求分析 用戶需求分析 經(jīng)過(guò)調(diào)研,本團(tuán)購(gòu)系統(tǒng)總共就 三種用戶角色,即普通團(tuán)購(gòu)用戶、申請(qǐng)團(tuán)購(gòu)的商家和系統(tǒng)管理員。 Java 先進(jìn)的分層思想可以實(shí)現(xiàn)“高內(nèi)聚、低耦合”的多層網(wǎng)絡(luò)架構(gòu),運(yùn)用 MVC 設(shè)計(jì)模式可以使電子商務(wù)軟件具有更加高效 、合理的系統(tǒng)架構(gòu),而 PHP 只能實(shí)現(xiàn)簡(jiǎn)單的分布式兩層或三層架構(gòu),技術(shù)架 構(gòu)的落后使得 PHP 開發(fā)的電子商務(wù)軟件先天不足,而后天又無(wú)法彌補(bǔ)先天的劣勢(shì),使得其開發(fā)的系統(tǒng)在可擴(kuò)展性、需求應(yīng)變的靈活性及安全可靠性上與 Java 編寫的電子商務(wù)軟件系統(tǒng)的差距越來(lái)遠(yuǎn)大。隨著 Ajax 的成熟,一些簡(jiǎn)化 Ajax 使用方法的程序庫(kù)也相繼問世。 AJAX 的興起是伴隨著一整個(gè)開發(fā)工具 /編程語(yǔ)言及相關(guān)技術(shù)系統(tǒng)來(lái)支撐的。 AspectWerkz,是基于 Java 的簡(jiǎn)單、動(dòng)態(tài)、輕量級(jí)的 AOP 框架,支持在運(yùn)行期或類裝載期織入橫切代碼,因此它擁有一個(gè)特殊的類裝載器。 ( 2)面向切面編程( AOP) Spring 被人重視的另一方面是支持 AOP(Aspect— Oriented Programming)面向切面編程的實(shí)現(xiàn),面向切面編程通過(guò)提供一種思考程序結(jié)構(gòu)的途徑,來(lái)彌補(bǔ) OOP 的不足。其具體含義是:當(dāng)某個(gè)角色 (可能是一個(gè) Java 實(shí)例,調(diào)用者 )需要另一個(gè)角色 (另一個(gè) Java 實(shí)例,被 調(diào)用者)的協(xié)助時(shí),在傳統(tǒng)的程序設(shè)計(jì)過(guò)程中,通常由調(diào)用者來(lái)創(chuàng)建被調(diào)用者的實(shí)例。 Spring ORM: Spring框架插入了若干個(gè) ORM框架,從而提供了 ORM的對(duì)象關(guān)系 工具,其中包括 JDO、 Hibernate和 IBatis SQL Map。 Spring上下文包括企業(yè)服務(wù),例如 JNDI、 EJB、電子郵件、國(guó)際化、校驗(yàn)和 調(diào)度功能。 Spring 框架式一個(gè)分層架構(gòu),由 7 個(gè)定義良好的模塊組成。然而,通過(guò)正確的方法和策略,使用 Hibernate 時(shí),還是非常接近直接使用 JDBC 時(shí)的效率,而且在有些情況下,還有可能高于使用 JDBC 時(shí)的執(zhí)行效率。其次,提供了軟件的可測(cè)試性,也就是說(shuō)軟件在應(yīng)用服務(wù)器上運(yùn)行但卻在服務(wù)器之外測(cè)試??刂妻D(zhuǎn)換的元數(shù)據(jù)的規(guī)定和管理在開發(fā)時(shí)增加了企業(yè)的日常開支,但 是其成本卻少于維護(hù)一個(gè)手工編碼的解決方案所需成本。在 Hibernate 的啟動(dòng)的過(guò)程中, Configuration 類的實(shí)例首先定位映射文檔位置、讀取配置,然后創(chuàng)建 SessionFactory 對(duì)象。但需要注意的是Session 對(duì)象是非線程安全的。在 Java 世界中, Hibernate 可以說(shuō)是在眾多 ORM 軟件中獲得關(guān)注最多、使用最廣泛的框架。 視圖組件: Action 在處理完客戶端請(qǐng)求后會(huì)通過(guò)視圖組件把處理結(jié)果顯示出來(lái),包括以下兩種情況。 Struts2 整個(gè)體系主要由以下幾部分構(gòu)成,如圖 所示: FilterDispatch/StrutsPrepareAndExecuteFilter:FilterDispatch 是 版本之前的核心控制器,之后的版本的核心控制器便全部都被StrutsPrepareAndExecuteFilter 所取代。但是,應(yīng)該盡可能避免其他元素直接訪問HttpServlet Request 或 HttpServlet
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1