<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 66,comments - 41,trackbacks - 0
    主要就我所了解的J2EE開發的框架或開源項目做個介紹,可以根據需求選用適當的開源組件進行開發。主要還是以Spring為核心,也總結了一些以前web開發常用的開源工具和開源類庫

      1持久層:

      1)Hibernate

      這個不用介紹了,用的很頻繁,用的比較多的是映射,包括繼承映射和父子表映射

      對于DAO在這里介紹個在它基礎上開發的包bba96,目前最新版本是bba96 2.0它對Hibernate進行了封裝, 查詢功能包括執行hsql或者sql查詢/更新的方法,如果你要多層次邏輯的條件查詢可以自己組裝QueryObject.可以參考它做HibernateDAO.也可以直接利用它

      2) iBATIS

      另一個ORM工具,Apache的,沒有Hibernate那么集成,自由度比較大

      2:SpringMVC

      原理說明和快速入門:

      配置文件為:

      Spring的配置文件默認為WEB-INF/xxxx-servelet.xm其中xxx為web.xml中org.springframework.web.servlet.DispatcherServlet的servlet-name.

      Action分發:

      Spring將按照配置文件定義的URL,Mapping到具體Controller類,再根據URL里的action= xxx或其他參數,利用反射調用Controller里對應的Action方法。

      輸入數據綁定:

      Spring提供Binder 通過名字的一一對應反射綁定Pojo,也可以直接從request.getParameter()取數據。

      輸入數據驗證

      Sping 提供了Validator接口當然還可以使用開源的Commons-Validaor支持最好

      Interceptor(攔截器)

      Spring的攔截器提供接口需要自己編寫,在這點不如WebWork做的好。全面

      (這里提一下WebWork和Struts的區別最主要的區別在于WebWork在建立一個Action時是新New一個對象而Struts是SingleMoule所有的都繼承它的一個Action,所以根據項目需要合適的選擇。)

      3:View層

      1) 標簽庫:JSP2.0/JSTL

      由于Webwork或Spring的標簽確實很有限,一般view層用JSTL標簽,而且據說JSTL設計很好速度是所有標簽中最快的使用起來也很簡單

      2) 富客戶端:DOJO Widgets, YUI(YahooUI),FCKEditor, Coolest日歷控件

      Dojo主要提供Tree, Tab等富客戶端控件,可以用其進行輔助客戶端開發

      YahooUI和DOJO一樣它有自己的一套javascript調試控制臺,主要支持ajax開發也有很多Tree,Table,Menu等富客戶端控件

      FCKEditor 最流行的文本編輯器

      Coolest日歷控件 目前很多日歷控件可用,集成在項目中也比較簡單,這個只是其中的一個,界面不錯的說……

      3) JavaScript:Prototype.js

      Prototype.js作為javascript的成功的開源框架,封裝了很多好用的功能,通過它很容易編寫AJAX應用,現在AJAX技術逐漸成熟,框架資源比較豐富,比如YUI,DWR等等,也是因為JavaScript沒有合適的調試工具,所以沒有必要從零開始編寫AJAX應用,個人認為多用一些成熟的Ajax框架實現無刷新更新頁面是不錯的選擇。

      4)表格控件:Display Tag ,Extreme Table

      這兩個的功能差不多,都是View層表格的生成,界面也比較相向,可以導出Excel,Pdf,對Spring支持很容易。

      相比較而言比較推薦ExtremeTable,它的設計很好功能上比DisplayTag多一些,支持Ajax,封裝了一些攔截器,而且最方面的是在主頁wiki中有詳細的中文使用文檔。

      5):OSCache

      OSCache是OpenSymphony組織提供的一個J2EE架構中Web應用層的緩存技術實現組件,Cache是一種用于提高系統響應速度、改善系統運行性能的技術。尤其是在Web應用中,通過緩存頁面的輸出結果,可以很顯著的改善系統的穩定性和運行性能。

      它主要用在處理短時間或一定時間內一些數據或頁面不會發生變化,或將一些不變的統計報表,緩沖在內存,可以充分的減輕服務器的壓力,防治負載平衡,快速重啟服務器(通過硬盤緩存)。

      6)SiteMesh

      sitemesh應用Decorator模式主要用于提高頁面的可維護性和復用性,其原理是用Filter截取request和response,把頁面組件head,content,banner結合為一個完整的視圖。通常我們都是用include標簽在每個jsp頁面中來不斷的包含各種header, stylesheet, scripts and footer,現在,在sitemesh的幫助下,我們刪掉他們輕松達到復合視圖模式。

      Sitemesh也是 OpenSymphony的一個項目現在最近的版本是2.2,目前OpenSymphony自從04年就沒有更新的版本了……感覺它還是比較有創新的一種頁面組裝方式, OpenSymphony開源組織的代碼一般寫的比較漂亮,可以改其源代碼對自己的項目進行適配。

      測試發現Sitemesh還存在一些問題,比如中文問題,它的默認編碼是iso-8859-1在使用時候需要做一些改動。

      7)CSS,XHTML

      這個不用說了,遵循W3C標準的web頁面開發。

      8)分頁標簽: pager-taglib組件

      Pager-taglib 是一套分頁標簽庫,可以靈活地實現多種不同風格的分頁導航頁面,并且可以很好的與服務器分頁邏輯分離。使用起來也比較簡單。

      9)Form: Jodd Form taglib

      Jodd Form taglib使用比較簡單,只要把

      的頭尾以包住

      就會自動綁定mybean, 自動綁定mybean的所有同名屬性到普通html標記input, selectbox, checkbox,radiobox……在這些input框里不用再寫任何代碼…

      10)Ajax:DWR

      J2EE應用最常用的ajax框架

      11)報表 圖表

      Eclipse BIRT功能比較強大,也很龐大……好幾十M,一般沒有特別需求或別的圖表設計軟件可以解決的不用它

      JasperReports+ iReport是一個基于Java的開源報表工具,它可以在Java環境下像其它IDE報表工具一樣來制作報表。JasperReports支持PDF、HTML、XLS、CSV和XML文件輸出格式。JasperReports是當前Java開發者最常用的報表工具。

      JFreeChart主要是用來制作各種各樣的圖表,這些圖表包括:餅圖、柱狀圖(普通柱狀圖以及堆棧柱狀圖)、線圖、區域圖、分布圖、混合圖、甘特圖以及一些儀表盤等等。

      琴棋報表,國產的……重點推薦,適合中國的情況,開放源代碼,使用完全免費。純JAVA開發,適用多種系統平臺。特別適合B/S結構的系統。官方網站有其優點介紹,看來用它還是不錯的選擇,最重要的是支持國產呵呵

      4:權限控制: Acegi

      Acegi是Spring Framework 下最成熟的安全系統,它提供了強大靈活的企業級安全服務,如完善的認證和授權機制,Http資源訪問控制,Method 調用訪問控制等等,支持CAS

      (耶魯大學的單點登陸技術,這個單點登陸方案比較出名。我也進行過配置使用,可以根據項目需要,如果用戶分布在不同的地方不同的系統通用一套登陸口令可以用它進行解決,一般注冊機登陸機就是這樣解決的)

      Acegi只是于Spring結合最好的安全框架,功能比較強大,當然還有一些其他的安全框架,這里列舉一些比較流行的是我從網上找到的,使用方法看其官方文檔把…

      JAAS, Seraph, jSai - Servlet Security, Gabriel, JOSSO, Kasai, jPAM, OpenSAML都是些安全控制的框架……真夠多的呵呵

      5:全文檢索

      1) Lucene

      Lucene是一套全文索引接口,可以通過它將數據進行倒排文件處理加入索引文件,它的索引速度和查詢速度是相當快的,查詢百萬級數據毫秒級出結果,現在最火的Apache開源項目,版本更新速度很快現在已經到了2.0,每個版本更新的都比較大,目前用的最多的版本應該是1.4.3,但它有個不太方面的地方單個索引文件有2G文件限制,現在2.0版本沒有這個限制,我研究的比較多,它的擴展性比較好,可以很方面的擴充其分詞接口和查詢接口。

      基于它的開發的系統很多,比如最常用的Eclipse的搜索功能,還有一些開源的軟件比如Compass,Nutch,Lius,還有我最近做的InSearch(企業級FTP文件網頁搜索)

      6:公共Util類

      主要是Jakarta-Commons類庫,其中最常用得是以下幾個類庫

      1) Jakarta-Commons-Language

      最常用得類是StringUtils類,提供了使用的字符串處理的常用方法效率比較高

      2) Jakarta-Commons-Beantuils

      主要用Beantuils能夠獲得反射函數封裝及對嵌套屬性,map,array型屬性的讀取。

      3) Jakarta-Commons-Collections

      里面有很多Utils方法

      7 日志管理

      Log4J

      任務是日志記錄,分為Info,Warn,error幾個層次可以更好的調試程序

      8 開源的J2EE框架

      1) Appfuse

      Appfuse是Matt Raible 開發的一個指導性的入門級J2EE框架, 它對如何集成流行的Spring、Hibernate、iBatis、Struts、Xdcolet、JUnit等基礎框架給出了示范。 在持久層,AppFuse采用了Hibernate O/R映射工具;在容器方面,它采用了Spring,用戶可以自由選擇Struts、Spring/MVC,Webwork,JSF這幾個Web框架。

      2) SpringSide

      。SpringSide較完整的演示了企業應用的各個方面,是一個電子商務網站的應用 SpringSide也大量參考了Appfuse中的優秀經驗。最重要的是它是國內的一個開源項目,可以了解到國內現在的一些實際技術動態和方向很有指導意義…

      9:模版 Template

      主要有Veloctiy和Freemarker

      模板用Servlet提供的數據動態地生成 HTML.編譯器速度快,輸出接近靜態HTML 頁面的速度。

      10:工作流

      我所知道比較出名的主要有JBpm Shark Osworkflow,由于對它沒有過多的研究所以還不是很清楚之間有什么區別。

      項目管理軟件

      dotProject:是一個基于LAMP的開源項目管理軟件。最出名的項目管理軟件

      JIRA: 項目計劃,任務安排,錯誤管理

      Bugzilla:提交和管理bug,和eclipse集成,可以通過安裝MyEclipse配置一下即可使用

      BugFree借鑒微軟公司軟件研發理念、免費開放源代碼、基于Web的精簡版Bug管理

      CVS:這個就不介紹了都在用。

      SVN: SubVersion已逐漸超越CVS,更適應于JavaEE的項目。Apache用了它很久后,Sourceforge剛剛推出SVN的支持。

      測試用例:主要JUnit單元測試,編寫TestCase,Spring也對Junit做了很好的支持



    MSN:
    posted on 2007-12-28 13:54 kylixlu 閱讀(152) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 免费人成视频在线播放| 你是我的城池营垒免费观看完整版 | 亚洲熟女综合色一区二区三区| 人体大胆做受免费视频| 在线成人爽a毛片免费软件| 日本免费人成黄页在线观看视频| 亚洲精品无码专区在线在线播放 | 成人免费a级毛片无码网站入口 | 亚洲成年人免费网站| 人人爽人人爽人人片A免费| 亚洲人成在线免费观看| 亚洲国产成人精品女人久久久 | 国产免费69成人精品视频| 图图资源网亚洲综合网站| 色窝窝亚洲AV网在线观看| 日韩精品人妻系列无码专区免费 | 丰满妇女做a级毛片免费观看| 日本h在线精品免费观看| 亚洲一区日韩高清中文字幕亚洲| 亚洲国产精品午夜电影| 成人国产精品免费视频| 国产精品免费看久久久久| 亚洲色图.com| 中文字幕无码毛片免费看| 日韩免费高清视频网站| 亚洲视频国产精品| 99精品免费视品| 国产一级淫片免费播放电影| 亚洲日本香蕉视频观看视频| 国产性生大片免费观看性| 国产禁女女网站免费看| 亚洲人成网站在线观看播放动漫 | 国产在线观看免费视频软件| 波多野结衣免费视频观看| 国产.亚洲.欧洲在线| 日韩精品极品视频在线观看免费| 色噜噜AV亚洲色一区二区| 国产精品亚洲小说专区| 久久不见久久见免费影院| 亚洲美女人黄网成人女| 七色永久性tv网站免费看|