成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

J2EE開發框架發展簡史 開源框架的出現

開發 后端
本文簡單介紹了J2EE開發框架的發展歷史。Java2企業版為中間件領域思想的統一上發揮了很大的作用。比如,J2EE為分布式事務管理、目錄服務和消息服務提供了一套標準的編程接口。

Java2企業版為中間件領域思想的統一上發揮了很大的作用。比如,J2EE為分布式事務管理、目錄服務和消息服務提供了一套標準的編程接口。J2EE的基礎——Java2標準版(J2SE) ,成功地為Java提供了一套訪問關系數據庫的標準。

但是,就像本文中“J2EE缺乏對編程的支持”提到的一樣,J2EE這個平臺沒有能夠提供一個令人滿意的應用程序編程模型(application programming model)。

Sun公司和一些大的應用服務器供應商都想用開發工具來降低J2EE開發的復雜性,但是這些工具沒有其他的JAVA 開發工具優秀,后者有先進的重構工具,和.NET平臺相比,J2EE的工具支持顯得很遜色。

很多J2EE開發工具自動產生的代碼像這些工具本身同樣復雜。在開源社區很多小型J2EE開發者選擇了另外一種開發方式—— 一些可以降低J2EE開發難度的開發框架,較為流行的比如:Struts, Hibernate, 和 Spring 架構,他們在當今很多J2EE項目中扮演著重要角色。

為什么要采用框架?

框架是由一些類組成,正是這些類為應用程序提供了一個可重用的設計,或者我們經常提到的,應用程序中的一層。應用程序代碼訪問類庫從而執行任務,而框架是調用應用程序代碼,從而管理程序的流程。這就是經常說道的好萊塢原則:“不要試圖聯系我們,我們到時候自會通知你?!遍_發者寫的程序在運行時由框架調用。

設計一個在各種未知背景下都可以使用的框架是很有挑戰性的。框架很適合在復雜的J2EE開發中使用,它可以為開發者提供一個簡單易用的模型。

采用一個經過良好設計的開源框架有很多好處:

◆在好的框架下,開發者只需要寫一些必須的代碼;他們不需要直接接觸底層的API。 這一點很重要。

◆經過良好設計的框架可以為程序提供清晰的結構并且提高程序的內聚性。好清晰的結構使得其他人可以更容易加入項目。

◆一個容易使用的框架可以通過一些例子和文檔為用戶提供最佳實踐。

◆采用成功的框架的代碼比自己的代碼容易測試

◆框架只有提供了一些值得使用的功能才會變得流行。J2EE工程只有真正需要框架的時候才會用它,而自己的框架并不是這樣,后者是處于統治地位的。

J2EE本身也提供了一些框架。比如, Enterprise Java-Beans (EJB) container或者 Servlet engine,二者都運用了“ 采用了好萊塢原則”這個思想,并采用運行時調用來管理對象。像Struts這些開源web應用框架正是建立在這兩個框架的基礎上的,本文討論的重點也是像Struts這樣建立在J2EE上的開發框架,他們為開發者提供了更為簡單的模型,和其他的一些好處。

開源框架的出現

很多大型的J2EE項目都用自己的內部框架來隱藏平臺的復雜性,直到最近人們才逐漸發現一些在很多項目中都存在的共有的難題,這些難題都可以由一個較為統一的解決方案來解決。而有的框架正好可以充當這些問題的解決方案?,F在有種很明顯的趨勢:與從前的內部框架相比,這些框架將成為這些難題的更加“標準化 ”的解決方案。

J2EE平臺的日益成熟是這些框架流行的一個原因。開發者知道有些地方是J2EE的標準API無能為力的,依他們的經驗來看,要彌補這個缺陷是很困難的。與此同時,一些優秀的開源框架可供使用,它們提供了極為豐富的技術文檔,在它們背后還有一個專業的團隊做支持,并且一切都是免費的。

Struts

Struts,在web應用程序產生時就有的開源框架。在1999-2000年,開發者們意識到JSP“Model1”的缺陷,JSP中充斥著請求處理代碼和靜態數據模板,這意味著你不得不把業務邏輯和復雜的HTML以及其他的標簽混到一起。

那個時候還沒有標準的框架和J2EE的標準支持,要解決這個問題開發者就得自己實現前端控制器,這樣可以把業務邏輯分離到java類中,從而可以減輕對JSP的維護難度。

前端控制器模式經常運用在MVC架構中,MVC模式在OO語言的GUI開發中經常使用(這個名字總是讓人誤解,WEB MVC中的視圖是從模型中“拉”數據;而在經典MVC中,模型把事件“推向”視圖)。

最初的前端控制器實現質量參差不齊。2001~2002年間,Apache開源組織(http://struts.apache.org)發布的Struts改變了這個狀況,雖然它并非一個完美的框架,但已經足夠使其成為該領域事實上的標準。

Struts向人們展示了開源框架的一些優點,比如,新手可以很容易地熟悉它的結構。2002年末,它成立很多J2EE項目很自然的選擇,每一個認真的J2EE開發者都會對它很熟悉。

Struts幾乎用在每一個J2EE項目中,這使得它成為J2EE架構的一個重要組成部分。甚至很多保守的組織也將其作為軟件底層的一部分,并同意接受Apache的開源協議條款。

Hibernate

下一個倒下的多骨諾米牌就是持久化。J2EE提供了兩個持久化的手段:JDBC,它是J2SE中訪問關系數據庫系統的標準API;另一個是實體Beans ,它是EJB中專門模型化持久化實體的組件。

JDBC以一種錯誤的編程模型來強制開發者用Java代碼來處理關系思想。而實體beans,先不說Sun和其他主要的J2EE供應商的吹噓,給人很笨重的感覺:起初這門技術的應用范圍很窄,連持久對象間的關系都不能處理。它使得應用程序難于測試,并且使用了一個很糟糕的查詢語言。直到2003年,即使EJB2.0和2.1做了很多改進,開發者們卻很少用它。

早期的嘗試。持久化問題的解決方案是由關系-對象映射(ORM)來解決的,它可以透明地持久化普通java對象(POJO)。該思想在注釋中有解釋。雖然這種方案并不是專屬java的。但相對與其他的社區而言比如.NET,ORM在java社區更加流行(.NET開發者總是對之抱有懷疑的態度)。

【編輯推薦】

  1. J2EE開發框架發展簡史續
  2. J2EE下使用JNDI
  3. J2EE筆試題目節選 Java的通信編程
  4. J2EE筆試題目節選 Java基礎系列
  5. 簡單解析J2EE架構:工具包的集合
責任編輯:book05 來源: 百度博客
相關推薦

2009-06-19 00:05:00

J2EE開發框架POJO

2011-11-25 14:59:36

JavaJ2EE框架

2012-02-14 09:48:04

Javabbossgroups

2012-02-21 09:48:10

JavaJ2EE

2009-06-22 17:38:05

J2EE框架

2009-06-22 17:20:33

J2EE框架

2012-01-17 10:22:07

JavaJ2EEJBoss

2009-06-18 16:13:14

J2EE開發

2009-06-10 14:10:23

J2EE學習J2EE是什么

2009-06-10 13:37:06

J2EE可伸縮性J2EE靈活性J2EE維護

2009-06-23 08:10:47

J2EE開發開源項目

2009-06-23 08:06:46

J2EE體系架構J2EE模型J2EE設計模式

2009-06-22 17:09:00

J2EE項目開發流程

2009-06-23 16:48:26

J2EE常見問題J2EE平臺

2009-06-11 17:06:11

J2EE歷史Java EE概述

2009-06-16 11:14:00

Hibernate+SJ2EE應用開發

2011-07-21 14:23:03

J2EE

2012-03-13 14:06:39

JavaJ2EE

2009-06-11 17:11:07

J2EE設計模式工廠模式

2009-06-22 17:34:40

J2EE架構
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品久久久久久久久久久久久久 | 亚洲女人天堂成人av在线 | 欧美精品一区二区三区一线天视频 | 91黄在线观看 | 在线一级片 | 欧美成人a | 中文在线а√在线8 | 久久久久久高清 | 亚洲精品乱码久久久久久9色 | 欧美在线观看一区 | 九九久久国产精品 | 2018天天干天天操 | caoporn国产精品免费公开 | 日本一区二区高清不卡 | 91av视频| 欧美一级久久 | 欧美一区二区三区 | 精品久久久久久久久久久久 | 国产午夜精品一区二区三区嫩草 | 日韩久久久久久久久久久 | 国产精品亚洲综合 | 在线āv视频 | 久久久久久国产精品免费免费狐狸 | 久久蜜桃av一区二区天堂 | 狠狠色狠狠色综合日日92 | 国产精品黄色 | 国产精产国品一二三产区视频 | 亚洲精品国产一区 | 中文字幕电影在线观看 | 中文精品视频 | 91久久看片| aaa在线观看 | 精品videossex高潮汇编 | 久色激情 | 涩涩鲁亚洲精品一区二区 | 国产激情一区二区三区 | 国产精品91久久久久久 | 欧美日韩中文字幕在线 | 99在线资源 | 国产精选一区 | 欧美日韩国产精品一区 |