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

正文內(nèi)容

基于mvc模式的crm框架的研究與改進(jìn)畢業(yè)論文(存儲(chǔ)版)

  

【正文】 果又通過(guò)瀏覽器的后退功能,退回到剛才的jsp頁(yè)面,如果再提交表單,其請(qǐng)求將由Action來(lái)處理。4. InsertAction在execute方法中增加判斷Token是否有效的邏輯.改造方法:在具體的Action中,在繼承CFSModule類(lèi)的Action中,在執(zhí)行具體提交任務(wù)的方法executeCommand***中,開(kāi)始部分需要像上述代碼一樣判斷令牌是否有效。 } 創(chuàng)建一個(gè)新的令牌,并把它保存在當(dāng)前session范圍內(nèi)。數(shù)據(jù)字典類(lèi)(Dictionary)中使用LinkedHashMap結(jié)構(gòu)存放數(shù)據(jù)。 (configName, preferenceGroup)。例如系統(tǒng)數(shù)據(jù)字典(Cached lookup tables)即緩存數(shù)據(jù)庫(kù)中以“l(fā)ookup_”開(kāi)頭的表中的數(shù)據(jù),這些數(shù)據(jù)主要用于下拉列表框,例如部門(mén)列表、國(guó)家列表等。系統(tǒng)會(huì)記錄組的每一個(gè)成員,在新成員加入或是現(xiàn)有的成員離開(kāi)或是崩潰時(shí),會(huì)通知組內(nèi)的其他成員,這樣就不必自己去管理這些事情了。2. 框架的視圖部分使用JSP模板,在模板中添加的菜單是通過(guò)XML配置文件,這樣做使得在開(kāi)發(fā)過(guò)程中增加一個(gè)模塊變得非常簡(jiǎn)單,只需要配置一些Xml文件即可增加一個(gè)模塊。通過(guò)學(xué)習(xí)Bosent CRM框架的MVC結(jié)構(gòu)的實(shí)現(xiàn)以及對(duì)Tomcat容器的學(xué)習(xí)使我對(duì)J2EE的整個(gè)框架體系結(jié)構(gòu)有了進(jìn)一步的理解,有了這次的學(xué)習(xí),我想以后我將能夠更快速的掌握web應(yīng)用系統(tǒng)的體系架構(gòu),架構(gòu)之路更進(jìn)一步了。馬斗.StrutsWeb設(shè)計(jì)與開(kāi)發(fā)大全.清華大學(xué)出版社,200602[11]. 張桂元.賈燕楓.Struts開(kāi)發(fā)入門(mén)與項(xiàng)目實(shí)踐.人民郵電出版社,2005.8[12]. 曹廣鑫.王謝華.Struts數(shù)據(jù)庫(kù)項(xiàng)目開(kāi)發(fā)寶典.電子工業(yè)出版社.2006.1附 錄一、英文原文:參考網(wǎng)站:二、英文翻譯:三、工程設(shè)計(jì)圖紙:四、源程序:五、其他:。2. 框架提供的數(shù)據(jù)庫(kù)連接池,它是一個(gè)假連接池,使用隊(duì)列保存連接對(duì)象,建議使用第三方連接池。 結(jié) 論在研究框架的過(guò)程中,我主要研究它的實(shí)現(xiàn)原理,包括前臺(tái)的jsp標(biāo)簽的實(shí)現(xiàn)、jsp內(nèi)置對(duì)象的實(shí)現(xiàn)、控制器的原理、數(shù)據(jù)綁定機(jī)制等。現(xiàn)在有很多項(xiàng)目都使用JGroups做底層的通訊,如JBossCache和OSCache用它做為底層支持來(lái)實(shí)現(xiàn)集群。這些共享數(shù)據(jù)包括:1) 系統(tǒng)中定義的所有用戶(hù)(User list cache)2) 系統(tǒng)中定義的所有角色權(quán)限數(shù)據(jù)(Role permission cache)3) 主菜單和所有子菜單數(shù)據(jù)4) 系統(tǒng)數(shù)據(jù)字典(Cached lookup tables):即緩存數(shù)據(jù)庫(kù)中以“l(fā)ookup_”開(kāi)頭的表中的數(shù)據(jù)5) CategoryEditor列表數(shù)據(jù)6) CustomListViewEditor列表7) 訪(fǎng)問(wèn)類(lèi)型(AccessTypeList類(lèi)型)的數(shù)據(jù)System Status中的共享數(shù)據(jù),不是只讀數(shù)據(jù),而是在系統(tǒng)運(yùn)行過(guò)程中逐漸被加載進(jìn)來(lái),不一次性加載的原因有兩種情況:1) 系統(tǒng)可能會(huì)管理這些數(shù)據(jù),例如用戶(hù)和角色權(quán)限數(shù)據(jù),增加、刪除、修改用戶(hù)或者權(quán)限時(shí),會(huì)修改對(duì)應(yīng)的緩存數(shù)據(jù)。 if ((configName)) { preferenceGroup = (LinkedHashMapString, Node) (configName)。 }第三節(jié) 標(biāo)簽顯示錯(cuò)誤問(wèn)題一、 錯(cuò)誤現(xiàn)象Bosent Crm平臺(tái)頁(yè)簽顯示錯(cuò)誤,當(dāng)用戶(hù)登錄后就會(huì)立即出現(xiàn)此問(wèn)題,而且每個(gè)用戶(hù)登錄均出現(xiàn)此問(wèn)題,錯(cuò)誤現(xiàn)象如下所示: 【說(shuō)明】:標(biāo)簽中出現(xiàn)英文。如果匹配,則返回true;否則,返回false。當(dāng)然,最好是實(shí)現(xiàn)html:form標(biāo)簽。在此Action中,首先調(diào)用isTokenValid方法判斷當(dāng)前用戶(hù)會(huì)話(huà)中的令牌值和請(qǐng)求參數(shù)中的令牌值是否匹配。Structs同步令牌機(jī)制的具體流程如下圖所示:利用Struts的Token機(jī)制來(lái)避免重復(fù)提交表單的流程具體描述如下:1) 首先,在用戶(hù)請(qǐng)求jsp頁(yè)面之前,將請(qǐng)求轉(zhuǎn)發(fā)給PrepareInsertAction。例如對(duì)于注冊(cè)表單,如果用戶(hù)已經(jīng)提交表單并且服務(wù)器成功注冊(cè)了用戶(hù)信息,此時(shí)用戶(hù)又通過(guò)瀏覽器的后退功能,退回到原來(lái)的頁(yè)面,重復(fù)提交表單,服務(wù)器端代碼應(yīng)該能夠識(shí)別用戶(hù)的誤操作行為,避免為用戶(hù)重復(fù)注冊(cè)。 1) 角色類(lèi)::修改計(jì)算屬于某角色的用戶(hù)數(shù)函數(shù)buildUserCount。標(biāo)簽是SUN JSP的標(biāo)準(zhǔn)實(shí)現(xiàn),這里不做介紹。此文件一般內(nèi)容如下所示:其中:1) :用于定義可以動(dòng)態(tài)忽略的JSP模塊;2) :用于定義JSP頁(yè)面中使用的可重命名的字符串標(biāo)識(shí)。其他參數(shù)用來(lái)定義顯示在菜單項(xiàng)上的文字、定義權(quán)限標(biāo)識(shí)以及顯示在HTML頁(yè)面的標(biāo)題。也是Bosent Crm平臺(tái)中最常使用的方式。MVC一個(gè)大的好處是它能為你的應(yīng)用程序處理很多不同的視圖。2) 刪除使用隊(duì)列中死鎖的JDBC數(shù)據(jù)庫(kù)連接,管理正在使用的JDBC連接緩存。為了讓多個(gè)線(xiàn)程高效使用數(shù)據(jù)庫(kù)連接,所以設(shè)計(jì)了復(fù)雜的數(shù)據(jù)庫(kù)連接緩存機(jī)制(即數(shù)據(jù)庫(kù)連接池)。原因:原有JavaBean的查詢(xún)模式太過(guò)復(fù)雜,直接在JavaBean的查詢(xún)方法里面返回結(jié)果集更易于理解和操作。開(kāi)發(fā)者不需要在直接從request數(shù)據(jù)區(qū)中獲取數(shù)據(jù),而是頁(yè)面元素和JavaBean能自動(dòng)綁定, autopopulate功能將HTML的“名稱(chēng)值”對(duì)映射到特定的JavaBean。 之所以如此設(shè)計(jì),是為減少action類(lèi)的數(shù)量,選擇了在請(qǐng)求中映射方法的策略,各個(gè)資源在action中是一個(gè)方法的多個(gè)程序分支的返回,也可以是action的不同方法的返回。在MVC的三個(gè)部件中,模型擁有最多的處理任務(wù)。2. 安裝配置文件 ,此配置文件位于安裝路徑下(例如:C:\BosentCRM),主要存放用戶(hù)配置系統(tǒng)的一些參數(shù). 3. 資源文件存放系統(tǒng)共用的數(shù)據(jù)字典數(shù)據(jù)。需要特別注意:ApplicationPrefs存放的是存放在Servlet Context中對(duì)象的參數(shù),而不是對(duì)象本身,這點(diǎn)很重要。其實(shí)這樣做的好處是菜單非常的靈活,通過(guò)xml文件配置主菜單、子菜單,而不用修改代碼即可增加一個(gè)模塊。最終action的方法執(zhí)行返回常量字符串,調(diào)用forward方法跳轉(zhuǎn)到視圖。在init方法中解析一個(gè)xml文件得到視圖與模型之間的映射關(guān)系,并提供全局的HashMap類(lèi)型的變量保存這些映射關(guān)系提供多線(xiàn)程使用。第三節(jié) 本章小結(jié)本章主要介紹了J2EE體系結(jié)構(gòu)和MVC設(shè)計(jì)模式的原理。一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)。第二節(jié) MVC設(shè)計(jì)模式概述 模型視圖控制器(下文簡(jiǎn)稱(chēng)為“MVC”)設(shè)計(jì)模式是Xerox PARC 在20世紀(jì)80年代為編程語(yǔ)言Smalltalk 80發(fā)明的用于用戶(hù)交互應(yīng)用程序的一種軟件設(shè)計(jì)模式,它將表現(xiàn)邏輯與業(yè)務(wù)邏輯分開(kāi),并且使用一個(gè)控制器控制表現(xiàn)邏輯與業(yè)務(wù)邏輯,使它們能夠有序的工作。實(shí)際上,J2EE平臺(tái)最大的優(yōu)點(diǎn)在于它提供了統(tǒng)一標(biāo)準(zhǔn),并且是開(kāi)源的。第二節(jié) 研究?jī)?nèi)容及目標(biāo)該論題來(lái)源于北京長(zhǎng)信通信息技術(shù)有限公司的客戶(hù)關(guān)系管理系統(tǒng)的二次開(kāi)發(fā),在公司的客戶(hù)關(guān)系管理系統(tǒng)需求等變化的情況下,我開(kāi)始研究公司的客戶(hù)關(guān)系管理系統(tǒng)開(kāi)發(fā)所使用的Bosent CRM框架。 目前的中小企業(yè)在發(fā)展過(guò)程中,往往存在著非常多的困難,特別是客戶(hù)管理,從最早的紙質(zhì)表格到之后的excel報(bào)表,到如今的CRM系統(tǒng),可以說(shuō),每一次改革,都是一次質(zhì)的飛躍。第三類(lèi)是一些中小型軟件廠(chǎng)商,這類(lèi)廠(chǎng)商主要聚焦在中小型企業(yè)或者快速發(fā)展型的企業(yè)身上。因此對(duì)客戶(hù)關(guān)系管理系統(tǒng)的研究具有重要意義。J2EE平臺(tái)的出現(xiàn)使得企業(yè)開(kāi)發(fā)者大幅度縮短軟件開(kāi)發(fā)時(shí)間,它提供中間件集成框架用來(lái)滿(mǎn)足無(wú)需太多費(fèi)用而又需要高可靠性,高可用性和可擴(kuò)展性的需求。J2EE體系結(jié)構(gòu)圖本論文主要研究的是表示層和業(yè)務(wù)邏輯層用MVC結(jié)構(gòu)實(shí)現(xiàn)。模型表示業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯??刂破骺梢杂脕?lái)連接不同的模型和視圖去完成用戶(hù)的需求,也可以為構(gòu)造應(yīng)用程序提供強(qiáng)有力的手段。控制器servlet主要的三個(gè)生命周期方法init、service、destroy。其中在數(shù)據(jù)傳遞過(guò)程中,框架的數(shù)據(jù)綁定機(jī)制是非常重要的,而本框架是根據(jù)URL中傳遞的autopopulate參數(shù)值決定是否綁定參數(shù)的,這樣做了使系統(tǒng)的與框架之間的耦合性降低,系統(tǒng)可移植性得到提高。這里的菜單是比較特別的,它是通過(guò)xml文件配置的,配置中包括主菜單、子菜單的層次結(jié)構(gòu)、名稱(chēng)、鏈接、菜單權(quán)限以及格式css文件,通過(guò)解析配置文件得這些信息并封裝在JavaBean中,傳遞給jsp模板。3) ApplicationPrefs:上下文共享數(shù)據(jù)區(qū),存放全局共享對(duì)象的參數(shù)。這個(gè)配置文件在整個(gè)MVC框架中起到核心作用,控制整個(gè)流程。例如下面的配置信息:第二節(jié) 模型 模型(Action)表示企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則。通過(guò)在URL中定義方法,讓控制器識(shí)別,并調(diào)用Action中對(duì)應(yīng)的方法。autopopulate=true 將頁(yè)面中的用戶(hù)名和密碼自動(dòng)綁定到JavaBean類(lèi)LoginBean。(3). 采用“主動(dòng)域?qū)ο竽J健遍_(kāi)發(fā)JavaBean并且仍然采用原來(lái)JavaBean的“主動(dòng)域?qū)ο竽J健眮?lái)開(kāi)發(fā),增,刪,改,查操作全部都封裝在同一個(gè)對(duì)象中,查詢(xún)返回的參數(shù)統(tǒng)一為泛型的ArrayList對(duì)象。每個(gè)線(xiàn)程都要使用單獨(dú)的數(shù)據(jù)庫(kù)連接對(duì)象。檢測(cè)ConnectionPool主要包括兩個(gè)任務(wù):1) 刪除空閑隊(duì)列中的JDBC數(shù)據(jù)庫(kù)連接,管理空閑JDBC連接緩存。對(duì)老式的Web應(yīng)用程序來(lái)說(shuō),視圖就是由HTML元素組成的界面,在新式的Web應(yīng)用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術(shù)已層出不窮,它們包括Adobe Flash和象XHTML,XML/XSL,WML等一些標(biāo)識(shí)語(yǔ)言和Web services.  如何處理應(yīng)用程序的界面變得越來(lái)越有挑戰(zhàn)性。這種方法充分?jǐn)U展了Action的功能。Action以URL的形式映射到菜單項(xiàng)。例如開(kāi)發(fā)一個(gè)action能訪(fǎng)問(wèn)第三方的數(shù)據(jù)庫(kù),那么可以把數(shù)據(jù)庫(kù)連接信息存放在此文件中,而不用在action類(lèi)中寫(xiě)死。Bosent Crm平臺(tái)使用的標(biāo)簽庫(kù)有:JSTL、dhvtaglib、zeroiotaglib。改造之后的表結(jié)構(gòu)之間的關(guān)系如下圖所示:2. 修改業(yè)務(wù)邏輯 CRM權(quán)限體系主要包括和權(quán)限
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1