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

正文內(nèi)容

基于反射機制的框架研究與實現(xiàn)畢業(yè)論文(完整版)

2025-09-04 16:11上一頁面

下一頁面
  

【正文】 實現(xiàn)。 ( 3) AOP:通過配置管理功用模塊,直接面向方面編程的功能集成到框架。但是, Spring 不想代替現(xiàn)有的框架,而是以高度開放性與和他們完美聯(lián)合。然后 FilterDispatcher 會經(jīng)過 ActionMapper 來判斷此 Request 需求調(diào)用哪一個 Action,如果需求調(diào)用的 Action 被尋找到,之前的請求處理就會被過濾器交給 ActionProxy 。但是例如: “ Select”、“ Insert”、“ Update”、“ Delete”、“ Drop”、“ Create” 等標準 SQL 命令,即使在不同數(shù)據(jù)庫中也是沒有差異的。 MySQL 是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),它將數(shù)據(jù)保存在不同的表中,而不是將各種各樣的數(shù)據(jù)堆放在一起,通過表與表之間的關(guān)系來將數(shù)據(jù)連接在一起,這樣就增加勒數(shù)據(jù)的處理速度,并且提高了靈活性 [9]。并且 MyEclipse 能夠完美的支持 Struts、JSP、 JavaScript、 Spring、 SQL 等程序。到如今,MyEclipse10 的功能可謂是相當巨大,它不但為 Eclipse 供應(yīng)了大量的 Java 工具的集合,極大的處理了不同開源工具的不相同問題,同樣也在自身集成了Tomcat,使得任務(wù)的發(fā)布不再需要事先綁 定 Tomcat,極大的簡化了開發(fā)人員所需要安裝的開發(fā)程序的數(shù)量。 框架與設(shè)計模式有著明顯區(qū)分,原因主要體現(xiàn)在他們給出的內(nèi)容和致力的應(yīng)用領(lǐng)域。在構(gòu)建系統(tǒng)之前要提前做出重要決定,如果系統(tǒng)已經(jīng)開始了一個詳細的設(shè)計或者構(gòu)造,這些決定一般就無法更改了。 大多數(shù)框架的一般作用:因為是對特定領(lǐng)域軟件具備相似屬性部分的提取,所以在這一領(lǐng)域內(nèi)開發(fā)新的程序過程中能夠不需要重新編寫代碼,只需要基于現(xiàn)有的框架進行進一步開發(fā)和整合就 可以了;這樣就能夠提升軟件質(zhì)量,大大的降低本錢,而且節(jié)省很多時間,使開發(fā)軟件越來越方便,效果越來越好,最后產(chǎn)生一種好的循環(huán)效果。第一,模式可以讓我們重用成功設(shè)計及體系結(jié)構(gòu)。如此,人們就可以屢次的運用該方案而不必去做同樣的勞動了”。在 20 世紀 70 年代,建筑學家 CHRISTOPHER ALEXANDER 完成了許多專著,在這些專著中有些記錄了建筑學以及土木工程學的模式。也的確是在這些基礎(chǔ)之上孕育了 Java 的各類新技術(shù)。框架定義了擴展方式以此規(guī)范框架的使用行為。能夠重用以前構(gòu)架,或者開發(fā)通用構(gòu)架是每個開發(fā)者所想要的。 伴隨軟件技術(shù)和軟 件領(lǐng)域的不斷發(fā)展,復雜性越來越大。例如想要 把一個對象中屬性名相同的數(shù)據(jù)復制到另外一個對象中,就可以利用反射,而且不需要指定每個屬性名字,只需要動態(tài)從類中獲取信息,再判斷屬性名是否相同就可以了。 基于反射機制的框架研究與實現(xiàn) RESEARCH AND IMPLEMENTATION OF THE FRAMEWORK BASED ON REFLECTION 專 業(yè): 20xx 信息與計算科學 指導教師姓名: 申請學位級別: 學士 論文提交日期: 20xx 年 6 月 12 日 摘 要 目前,隨著互聯(lián)網(wǎng)應(yīng)用的快速發(fā)展,軟件運行環(huán)境正從一個集中封閉計算的平臺走向開放、動態(tài)的計算平臺,并且基于服務(wù)的計算模式將逐漸取代它,因此這些變化傳統(tǒng)軟構(gòu)件技術(shù)應(yīng)對起來很困難。 本課題旨在基于反射機制對框架進行研究,實現(xiàn)一個輕量級的框架以此來適應(yīng)小的系統(tǒng)。越來越多的問題需要開發(fā)人員的解決,當然解決的方法、方案各不相同。在不同的框架中如何選擇適合應(yīng)用的框架,以及如何讓每個應(yīng)用層完美連接?如何整合框架,才能使各層之間互相作用是以都以一種松散耦合方式而不用去管底層技術(shù)細節(jié)?軟件開發(fā)人員需要解決這些問題。復用和在包裝的思緒讓軟件能夠保持總體構(gòu)造穩(wěn)定性及擴展性。在 Java 語言中,一個類具有不同的屬性和方法,通過相關(guān)類來實現(xiàn)對其信息的提取及重構(gòu)。之后,軟件開發(fā)的一些模式先驅(qū)們在 CHRISTOPHER ALEXANDER的專著中得到了靈感,從此軟件開發(fā)就有模 式這一觀念了 [3][4]。雖然 Alexander 說的是建筑的模式,但這個定義在軟件設(shè)計中也能很好運用。通過模式提供的方案都在不同時間、不同項目中被反復的用于解決相似的問題而總結(jié)的使用經(jīng)驗,模式形成了強大的重用機制,可以讓軟件開發(fā)人員避免重復編寫代碼。 框架不是可以直接利用的現(xiàn)成應(yīng)用系統(tǒng),因為框架僅僅是一個半成品,需要軟件開發(fā)人員對它進行第二次發(fā)開從而達成具有具體功能的應(yīng)用系統(tǒng)。因此,必須認真研究后再做出決 定,這決定了設(shè)計成功與否。 ( 1)從內(nèi)容看,設(shè)計模式是一個簡單的設(shè)計,這個設(shè)計可以有很多不同的語言,用不用的方式去實現(xiàn);而框架是一種混合體由設(shè)計和代碼組成,軟件開發(fā)人員可以不擴展框架,從而形成完全不同的應(yīng)用。使得 Java/JSP 應(yīng)用開發(fā)的效率得到了很大的提升??梢哉f,在 Eclipse 開發(fā)工具中,幾乎包括了目前所有主流開源產(chǎn)品的 MyEclipse 毫無疑問的成為了最閃耀的一點星光。 MySQL 在語言的選擇上依舊采用了主流的 SQL 數(shù)據(jù)庫標準化語言,這也使得其容易上手,并且編寫相對規(guī)范。 SQL 概括起來大概可以分為以下幾個部分: ( 1) DCL( Data Control Language 數(shù)據(jù)控制語言)通常被用 于對用戶的權(quán)限進行賦予和取消; ( 2) DDL( Data Definition Language 數(shù)據(jù)定義語言)通常被用于數(shù)據(jù)結(jié)構(gòu)的定義,如創(chuàng)建、修改、刪除等命令; ( 3) DML( Data Manipulation Language 數(shù)據(jù)操作語言)通常被用于檢索或者修改數(shù)據(jù)庫中的已有數(shù)據(jù); 天津科技大學 20xx 屆本科生畢業(yè)設(shè)計 8 第四章 框架研究 第一節(jié) Struts2 框架 Struts2 早先是 ApacheJakarta 項目構(gòu)成成分,項目的先鋒者想要改善及提升Servlet、 JSP、 標簽庫和面向?qū)ο蠹夹g(shù)水平,所以對此項目進行相信的研究。然后 ActionProxy 會建立ActionInvocation 實例, ActionInvocation 此時會調(diào)用正確的 Action,當然調(diào)用Action 的過程當中會涉及到有關(guān)攔截器的調(diào)用。 Spring 框架是個分層構(gòu)造,由七個定義優(yōu)秀模塊構(gòu)成。因此,能夠很輕易地利用 Spring 框架管理的任一個對象支持 AOP。經(jīng)過計謀端口,框架包容了大批視圖技術(shù)而變?yōu)楦呒壙膳渲玫?。Hibernate 是現(xiàn)在一個 比較流行的 ORM(對象 關(guān)系映射)工具,當然目前也有許多其他的 ORM 工具,比如: MyBtis、 JPA。 Java 技術(shù)有下列優(yōu)點: ( 1)簡單: Java 語言是面向?qū)ο笳Z言,他只需要少些最基本的概念就能夠很容易的寫出各種情況下的應(yīng)用并且他只需要供應(yīng)基本方式去完成之前已經(jīng)確定的任務(wù)。它提供自動垃圾收集來進行內(nèi)存管理,防止程序員在管理內(nèi)存時容易產(chǎn)生的錯誤。 ( 8)解釋執(zhí)行:解釋器直接對字節(jié)碼注解,字節(jié)碼自身攜帶了大量信息這樣就使連接非常的容易。 JDBC 同樣被分為了 3 個主要部分,分別是: ( 1) 連接 ( Connection) ; ( 2) 語句 ( Statement) ; ( 3) 結(jié)果集 ( ResultSet); 它的工作方式如下圖所示: 圖 51 JDBC 工作方式圖 申請連接 釋放連接 申請連接 釋放連接 request 線程 2 request Servlet 或 JSP 用戶 1 用戶 2 線程 1 連接池 管理鏈接 釋放連接 建立連接 DBMS 線程 天津科技大學 20xx 屆本科生畢業(yè)設(shè)計 13 第二節(jié) 連接池 連接池的技術(shù)基本處于這樣:一般對很多的應(yīng)用程序在處理一般的事務(wù)通常只需要幾毫秒就能完成,這時僅僅需要訪問 JDBC 的一個連接線程。 ( 3)資源的利用會受控制:當使用者不需要連接池的時候 ,而在線程需要一個連接,那么程序只能為此創(chuàng)建一個新的連接,使用用戶應(yīng)用資源的時候就會產(chǎn)生十分高的浪費甚至導致由于過載而產(chǎn)生異常。 ( 4)存取數(shù)據(jù)庫。有用戶對數(shù)據(jù)庫進行訪問操作的時候,應(yīng)用程序會給 ODBC 管理器傳遞一個 ODBC 的函數(shù)讓其調(diào)用 。 C3P0 與 DBCP 的區(qū)別: C3P0 與 DBCP 的最大的區(qū)別就是有無自動回收空閑連接的功能, DBCP 沒有此項功能是而 C3P0 是有的。 import 。 //建立一個新的雙向循環(huán)鏈表 private static LinkedList TustDataSource=new LinkedList()。 //如果驅(qū)動類加載失敗,將捕獲異常 } catch (Exception e) { // TODO Autogenerated catch block ()。 結(jié)果如圖: 圖 62 創(chuàng)建表 數(shù)據(jù)輸入之后“學生”表 student 創(chuàng)建成功如圖: 圖 63 學生 表 student 天津科技大學 20xx 屆本科生畢業(yè)設(shè)計 19 第七章 基于反射機制框架的設(shè)計與實現(xiàn) Spring 中 AOP 就是基于反射機制來實現(xiàn)的,在這里我們舉個例子來說明一下 AOP 其中的一個功能。代碼下: package 。 long endTime = ()。 天津科技大學 20xx 屆本科生畢業(yè)設(shè)計 21 import 。 long endTime = ()。這就是反射機制的優(yōu)勢,可以在方法之外修改所要實現(xiàn)的方法,而一般的方法沒有這個功能。 import 。 import 。 static { request=()。 if(JDBC.equals(selectedconnection)){ ()。 Object retVal = (target, args)。 } } )。Selectedconnection 即表示選擇的方式。 public class ConnectionName { private String selectedconnection。 session=()。 ()。C3P039。TUSTCP39。 (conn)。 Connection conn=()。 private static HttpSession session。 import 。 } public void closeConnection(Connection conn)throws Exception{ selectedconnection=(String)(selectedconnection)。 (() + running time of + (endTime beginTime))。 } else if(TUSTCP.equals(selectedconnection)){ //return ()。 (jdbc: (root)。 import 。 import 。這個設(shè)計的功能是用來選擇哪種連接方式對客戶端和數(shù)據(jù)庫進行連接。 return retVal。 } } 現(xiàn)在我們寫一個方法用到上面的兩個功能。 } public void beforeMethod(Method method) { // TODO Autogenerated method stub (TUSTCP連接開始! )。 public interface Advice { void beforeMethod(Method method)。這個 AOP 功能是對反射機制的完美應(yīng)用。 } public static void putConnection(Connection conn){ (conn)。 static{ try { //加載 MySQL 數(shù)據(jù)庫 的驅(qū)動類 ()。 import 。 使用 C3P0 有三種方式 : ( 1)直接初始化與配置 ComboPooledDataSource Bean; ( 2)使用 DataSources Factory; ( 3)經(jīng)過 PoolBackedDataSource 并設(shè)立 ConectionPoolDataSource 來創(chuàng)建。我們可以看出,單束式驅(qū)動程序自身就是數(shù)據(jù)庫引擎,單束式驅(qū)動程序可以直接對數(shù)據(jù)庫完成操作,雖然此數(shù)據(jù)庫可以在網(wǎng)絡(luò)的任意的一個地方。如過實際空閑連接數(shù)大于初始空閑連接數(shù)的時,連接就會被釋放)。而且每一個連接都會對其程序和服務(wù)器的資源產(chǎn)生一些影響及限制。 實際上當線程需要一個連接的時候,這時候就會從連接池中
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1