春風(fēng)博客

          春天里,百花香...

          導(dǎo)航

          <2025年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統(tǒng)計

          公告

          MAIL: junglesong@gmail.com
          MSN: junglesong_5@hotmail.com

          Locations of visitors to this page

          常用鏈接

          留言簿(11)

          隨筆分類(224)

          隨筆檔案(126)

          個人軟件下載

          我的其它博客

          我的鄰居們

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          我的評論

          共6頁: 上一頁 1 2 3 4 5 6 下一頁 
          re: 洗滌心靈之純音樂 sitinspring 2007-10-28 08:54  
          不錯. 我也推薦幾個給你

          空靈悠揚(yáng)的"大煙山"
          http://www.xinnight.com/leadbbs/images/upload/2006/12/20/083054.wma

          洗滌心靈的歌聲 何訓(xùn)田--春歌
          http://bbs.foyuan.net/Music/何訓(xùn)田/春歌.mp3

          The Mass (魔界傳奇)
          ( 地址用擺渡嗖嗖一下)
          re: Time Management for System Administrator(2) sitinspring 2007-10-28 08:41  
          挺有價值的.
          離成功有多遠(yuǎn)?
          re: 千里之行 始于足下 sitinspring 2007-10-27 19:13  
          我經(jīng)常在半夜醒來苦苦思索未來的路究竟該怎么走?
          Sun的思想天下無敵,Sun的產(chǎn)品慘不忍睹.
          還有,出國再回來當(dāng)海龜,憑外匯差價就能過得不錯.
          re: jdk-6u3 來了 sitinspring 2007-10-07 11:13  
          jdk5以來,速度加快好多.
          re: [轉(zhuǎn)載]你的四金到底有多少? sitinspring 2007-10-05 22:18  
          >>目前個人社保金交得多,只能說明你對國家的貢獻(xiàn)大,并不表示你未來會從中獲得更多的利益。如果想保證退休后的生活來源,還是要靠自己。

          這句話值得再頂一次.
          不錯.
          re: [轉(zhuǎn)載]你的四金到底有多少? sitinspring 2007-10-05 14:22  
          好文章.
          re: EJB學(xué)習(xí)日記(15) sitinspring 2007-10-02 21:08  
          國慶還在學(xué)習(xí)啊
          re: 密碼MD5信息摘要的一點(diǎn)建議 sitinspring 2007-10-02 07:56  
          不錯
          確實(shí)漂亮.
          Mark.
          re: 用匿名類處理分類匯總的方法 sitinspring 2007-09-28 09:40  
          @朱雀

          這是個例子.

          匿名類相比Strategy的優(yōu)勢在靈活.
          re: 用匿名類處理分類匯總的方法 sitinspring 2007-09-28 09:15  
          接口容納不了Student這個成員.
          PreparedStatement 能有效防止Sql注入攻擊,速度較快,但失于靈活.

          Statement靈活性高些.
          re: 很快就十一了 sitinspring 2007-09-22 07:29  
          好,屆時過來看.
          re: Web開發(fā)中使用反射為Bean賦值 sitinspring 2007-09-22 07:28  
          文章不錯,格式可以稍微調(diào)整一下.
          作個記號,用到時再來細(xì)看.
          標(biāo)記一下.
          re: 寫給我那還沒有飄來的技能云 sitinspring 2007-09-19 08:21  
          和強(qiáng)人比較會知道自己的不足,去看看.
          re: To技能云:還請耐住寂寞 sitinspring 2007-09-19 08:19  
          我一直覺得論壇除了開闊眼界外就只有娛樂用途.不必把某些論壇抬得太高.
          @Tiger F

          以前我也想過用Altlr,但規(guī)則好像比較復(fù)雜,學(xué)習(xí)起來也蠻花時間的,想想還不如自己寫一個.
          re: Spring集成XFire開發(fā)WebService sitinspring 2007-09-17 18:29  
          代碼亂了一些,怎么不試試"插入代碼"按鈕呢?
          @mingj

          確實(shí)如此,人如果沒有一個長期的目標(biāo)便會陷入盲目中,了解自己很重要.
          re: EJB學(xué)習(xí)日記(7) sitinspring 2007-09-17 11:45  
          @驚鴻逝水

          是Hibernate,spring先學(xué)EJB的好不好?
          re: EJB學(xué)習(xí)日記(7) sitinspring 2007-09-17 10:08  
          Hibernate和Spring從EJB中汲取了多少營養(yǎng)啊,哈哈.
          @千里冰封

          以前做項(xiàng)目習(xí)慣用dom4j了,再之前用jdom.1.5以前的dom或sax沒他們倆這么方便,1.5以后就不清楚了.你有什么更好的推薦嗎?



          @壞男孩

          確實(shí),要成就一番事業(yè),非創(chuàng)業(yè)不可.
          @zht

          除了外匯比價比較讓人欣慰外,還是打工仔一個.而且外企強(qiáng)制員工成為螺絲釘比較不爽.
          re: Flex的工作炙手可熱 sitinspring 2007-09-16 18:06  
          當(dāng)年RoR也是雷聲大雨點(diǎn)小.
          re: 普元常用校驗(yàn)?zāi)_本2:check.js sitinspring 2007-09-16 18:03  
          不錯,可以類化一下.
          re: Eclipse中最常用的10個快捷鍵 sitinspring 2007-09-16 11:43  
          Ctrl + D : 刪除本行
          Ctrl + SHIFT + F : 整形
          不一味盯著錢就具備做玩家的基本條件, 值得考慮.
          re: 軟件開發(fā)#前途 sitinspring 2007-09-15 16:36  
          有些城市的軟件業(yè),外包就是主旋律,無論對日還是對歐美,實(shí)際的技術(shù)含量并不高, 這樣,鐘情于技術(shù)意義就不大了. 一般來說,要想掙錢多先學(xué)好語言,多拍拍領(lǐng)導(dǎo)馬屁是"正"道.
          很不幸,某些城市中軟件外包是永遠(yuǎn)的主題,架構(gòu)師的職位很少,即使有也是幌子,實(shí)際上還是SSE或者PM.
          re: 軟件開發(fā)#前途 sitinspring 2007-09-15 13:56  
          >>有些人可能對軟件開發(fā)有很大的興趣,如果想轉(zhuǎn)的話是很舍不得,但是要想明白的一點(diǎn)就是興趣不能當(dāng)飯吃,每個人工作的目的就是為了更好的生活。

          這個觀點(diǎn)很是同意.
          myeclipse 大了點(diǎn),有沒小點(diǎn)的?
          re: JAVA截屏程序(第四版) sitinspring 2007-09-09 07:31  
          >>dist文件夾里面的JAR文件是可以雙擊執(zhí)行的

          雙擊執(zhí)行Jar你是怎么實(shí)現(xiàn)的?
          re: Web框架找工難易比較 sitinspring 2007-09-09 07:17  
          —— 比較JSF、Spring MVC、Stripes、Struts 2、Tapestry和Wicket

          【譯者按】這是Matt Raible在今年6月24-27號召開的JA-SIG夏季會議上所作的主題演講,Matt從眾多方面對Java Web層框架做了一個全面、深入的比較。筆者認(rèn)為這是一份及時的文檔,它對開發(fā)者如何判定一個Web層框架的好壞、如何選擇適合自己項(xiàng)目的框架有極大的指導(dǎo)作用。本文是對Matt Raible演講稿的整理歸納。
          【作者介紹】Matt Raible,開源框架AppFuse的發(fā)起者、主要開發(fā)者;《Professional JSP 2.0》、《Spring Live》等書的作者;眾多會議的演講者,MySQL User Conference, ApacheCon, ApacheCon EU等;現(xiàn)任Raible Designs的CEO。

          首先,Matt以自己的實(shí)踐經(jīng)驗(yàn),指出了Java Web層框架——JSF、Spring MVC、Stripes、Struts 2、Tapestry和Wicket他們各自的優(yōu)、缺點(diǎn):
          JSF
          優(yōu)點(diǎn):
          Java EE標(biāo)準(zhǔn),這意味著有很大的市場需求和更多的工作機(jī)會
          上手快速并且相對容易
          有大量可用的組件庫
          缺點(diǎn):
          大量的JSP標(biāo)簽
          對REST和安全支持不好
          沒有一個統(tǒng)一的實(shí)現(xiàn)。既有SUN的實(shí)現(xiàn),又有Apache的實(shí)現(xiàn)——MyFaces。

          Spring MVC
          優(yōu)點(diǎn):
          對覆蓋綁定(overriding binding)、驗(yàn)證(validation)等提供生命周期管理
          與許多表示層技術(shù)/框架無縫集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF等
          便于測試——?dú)w功于IoC
          缺點(diǎn):
          大量的XML配置文件
          太過靈活——沒有公共的父控制器
          沒有內(nèi)置的Ajax支持

          Stripes
          優(yōu)點(diǎn):
          不需要書寫XML配置文件
          良好的學(xué)習(xí)文檔
          社區(qū)成員很熱心
          缺點(diǎn):
          社區(qū)比較小
          不如其他的項(xiàng)目活躍
          ActionBean里面的URL是硬編碼的

          Struts 2
          優(yōu)點(diǎn):
          架構(gòu)簡單——易于擴(kuò)展
          標(biāo)記庫很容易利用FreeMarker或者Velocity來定制
          基于控制器或者基于頁面的導(dǎo)航
          缺點(diǎn):
          文檔組織得很差
          對新特征過分關(guān)注
          通過Google搜索到的大多是Struts 1.x的文檔

          Tapestry
          優(yōu)點(diǎn):
          一旦學(xué)會它,將極大地提高生產(chǎn)率
          HTML模板——對頁面設(shè)計師非常有利
          每出一個新版本,都會有大量的創(chuàng)新
          缺點(diǎn):
          文檔過于概念性,不夠?qū)嵱?
          學(xué)習(xí)曲線陡峭
          發(fā)行周期長——每年都有較大的升級

          Wicket
          優(yōu)點(diǎn):
          對Java開發(fā)者有利(不是Web開發(fā)者)
          頁面和顯示綁定緊密
          社區(qū)活躍——有來自創(chuàng)建者的支持
          缺點(diǎn):
          HTML模板和Java代碼緊挨著
          需要對OO有較好的理解
          Wicket邏輯——什么都用Java搞定

          接著,Matt通過采訪這些框架的作者,與他們討論各種開源的Java Web框架,并且突出各個框架的長處、聽取框架作者對其他框架的看法,希望借此了解這些框架的未來發(fā)展方向。

          下列是一些被采訪者:
          JSF, Jacob Hookom
          RIFE, Geert Bevin
          Seam, Gavin King
          Spring MVC, Rob Harrop
          Spring Web Flow, Rob Harrop and Keith Donald
          Stripes, Tim Fennell
          Struts 1, Don Brown
          Tapestry, Howard Lewis Ship
          Trails, Chris Nelson
          Struts 2, Patrick Lightbody
          Wicket, Eelco Hillenius

          Matt對采訪做了如下總結(jié):
          JSF:
          如果你想讓web應(yīng)用具有類似桌面程序的功能性,那么JSF的標(biāo)準(zhǔn)規(guī)范和大量第三方組件庫的支持值得你 信賴。
          Spring MVC:
          綜合了許多不同的技術(shù),這使得它可以被廣泛地應(yīng)用到不同類型的項(xiàng)目中去;它可以被當(dāng)作web應(yīng)用開發(fā)的一個基礎(chǔ)平臺。
          Stripes:
          可以被應(yīng)用到存在大量復(fù)雜數(shù)據(jù)交互的程序中;有強(qiáng)大的類型轉(zhuǎn)換、綁定和驗(yàn)證功能;可以使管理大的復(fù)雜表單以及直接映射它們到域?qū)ο笞兊煤唵巍?
          Tapestry:
          在中到大型項(xiàng)目中,表現(xiàn)突出(當(dāng)然,你也可以只把它應(yīng)用到單個頁面上),在這些項(xiàng)目中,你可以通過簡單地創(chuàng)建新的組件起到杠桿作用。
          Struts 2:
          通常更適合于那些希望可以真正開始做事并且愿意花費(fèi)大量時間來學(xué)習(xí)他們使用的開源工具的小項(xiàng)目組。Struts 2的目標(biāo)不是那些更喜歡拖放式開發(fā)的“扶手椅程序員”。
          Wicket:
          非常適合于這樣的內(nèi)/外部網(wǎng)應(yīng)用:UI很復(fù)雜并且你希望可以充分利用你的開發(fā)者資源。

          上面的總結(jié),基本是突出了各個框架的長處。然而,哪些又是他們不好的地方呢?
          Matt提出了評價一個框架好壞與否的標(biāo)準(zhǔn):
          Ajax支持
          是不是內(nèi)置了?是否便于使用?
          書簽?zāi)芰?
          用戶能否將某個頁面收藏起來并且可以方便地返回到該頁面?
          驗(yàn)證
          使用是否簡單?是否支持客戶端(JavaScript)驗(yàn)證?
          可測試性
          脫離容器測試控制器,是否足夠簡單?
          提交和重定向
          框架如何處理重復(fù)提交問題?
          國際化
          如何支持國際化?控制器利用國際化信息,是否容易?
          頁面修飾
          框架支持哪種類型的頁面修飾/組成機(jī)制?
          社區(qū)和技術(shù)支持
          提出問題,能否被快速地、恭敬地回答?
          開發(fā)工具
          是否有支持這個框架的好的工具,尤其是IDE?
          市場需求
          學(xué)習(xí)了這個框架,它能否幫你找到份工作?
          崗位數(shù)量
          在dice.com和indeed.com上,對這個框架技能的需求如何?

          筆者認(rèn)為這個評價標(biāo)準(zhǔn),值得大家借鑒。

          然后,Matt按照這些評價標(biāo)準(zhǔn),對各個框架做了以下闡述:
          Ajax支持
          JSF:沒有內(nèi)置的Ajax支持,需要使用ICEfaces和Ajax4JSF
          Stripes:沒有對應(yīng)的類庫,支持流輸出
          Struts 2:內(nèi)置Dojo,有用于GWT和JSON的插件
          Spring MVC:沒有對應(yīng)的類庫,需要使用DWR和Spring MVC擴(kuò)展
          Tapestry:Tapestry 4.1中,有內(nèi)置的Dojo
          Wicket:有Dojo和Script.aculo.us支持

          書簽?zāi)芰?
          JSF:可以任意提交——URL甚至不被考慮
          Stripes:使用約定,但是你可以不加理會
          Struts 2:有命名空間的概念,這使得收藏某個頁面并返回變得容易
          Spring MVC:允許完全的URL控制
          Tapestry:依然存在一些丑陋的URL
          Wicket:允許裝配(mount)頁面/URL

          驗(yàn)證
          JSF:默認(rèn)的國際化信息丑陋,但是配置簡單
          Stripes和Wicket:用Java類進(jìn)行驗(yàn)證——不支持客戶端驗(yàn)證
          Struts 2:使用OGNL完成強(qiáng)大的表達(dá)式驗(yàn)證功能;只有在Action上指定了規(guī)則,才支持客戶端驗(yàn)證。
          Spring MVC:允許你使用公共驗(yàn)證器——這是一種成熟的解決方案
          Tapestry:有健壯的驗(yàn)證功能——不需自定義就有漂亮的國際化信息

          可測試性
          Spring MVC和Struts 2:允許利用mocks(例如EasyMock、jMock和Spring Mocks)簡單地進(jìn)行測試
          Tapestry:測試?yán)щy,因?yàn)轫撁骖惐怀橄蟆⒕唧w類被簡化
          JSF:頁面類可以方便地被測試,實(shí)際上很像Struts 2 中的actions
          Wicket:有WicketTester——一個強(qiáng)大的解決方案
          Stripes:有Servlet API Mocks和MockRoundtrip

          提交和重定向
          解決重復(fù)提交問題的最簡單方法是:在提交后重定向
          Spring MVC:允許你將參數(shù)加到重定向URL上
          Stripes、Tapestry和Wicket:有“flash式”的支持
          Struts 2:需要一個自定義的解決方案
          JSF:需要一個自定義的解決方案,國際化信息很難加入到頁面bean中

          國際化
          JSTL的<fmt:message>標(biāo)簽使國際化變得簡單;如何將國際化信息放到控制器類中,還沒有一個統(tǒng)一的標(biāo)準(zhǔn)。
          Stripes、Spring MVC和JSF:每個地區(qū)使用一個資源綁定文件
          Struts 2、Tapestry和Wicket:提倡把每個頁面/action用到的資源文件分開
          JSF:需要在每個頁面上定義資源綁定信息
          Tapestry:<span key="key.name">標(biāo)簽比較可怕

          頁面修飾
          Tiles能夠用于Struts 2、Spring MVC和JSF中;需要對每個頁面進(jìn)行配置。
          SiteMesh能夠用于所有的這些框架中(不推薦在JSF、Tapestry或者Wicket中使用);在設(shè)置完成后, 只需要很少的維護(hù)。

          開發(fā)工具
          Spring MVC:Spring IDE,但是只做XML校驗(yàn),不是一個UI/web工具
          Struts 2:Eclipse
          Tapestry:Spindle,對編碼者非常有利
          JSF:眾多IDE支持,并且做得越來越好
          Stripes和Wicket:沒有任何官方工具
          NetBeans目前支持Struts *、JSF(+Facelets)、Tapestry和Wicket,尚不支持Stripes和Spring MVC


          市場需求
          Struts 1:需求依然很大并且被廣泛使用
          Spring MVC:越來越受關(guān)注,但大部分是因?yàn)镾pring框架的一些其他特征
          JSF:很快地變得流行起來
          Struts 2:正在獲得地盤,但是相關(guān)的工作機(jī)會很少
          Tapestry:在過去的數(shù)年里,受歡迎程度不斷增加
          Wicket和Stripes:還是未知數(shù)

          通過以上的比較,我想大家對在自己的項(xiàng)目中應(yīng)該選擇哪種Web層框架,應(yīng)該有了更清醒的認(rèn)識。

          最后,Matt列出了一些相關(guān)資源,也供讀者參考。
          Struts - http://struts.apache.org
          StrutsTestCase: http://strutstestcase.sf.net
          Spring MVC - http://www.springframework.org
          Spring IDE: http://www.springide.org
          Gaijin Studio: http://gaijin-studio.sf.net
          Struts 2 - http://opensymphony.org/webwork
          Eclipse Plugin: http://sf.net/projects/eclipsework
          ?IDEA Plugin: http://wiki.opensymphony.com/display/WW/IDEA+Plugin
          Tapestry - http://tapestry.apache.org
          http://spindle.sourceforge.net
          JSF - http://java.sun.com/j2ee/javaserverfaces and http://myfaces.apache.org
          Java Studio Creator: http://sun.com/software/products/jscreator
          MyEclipse: http://myeclipseide.com
          IDEA: http://www.jetbrains.com/idea
          SiteMesh: http://opensymphony.com/sitemesh
          Testing Frameworks
          JUnit: http://junit.org
          EasyMock: http://easymock.org
          jMock: http://jmock.org
          jWebUnit: http://jwebunit.sourceforge.net
          Canoo WebTest: http://webtest.canoo.com
          Tapestry Test Assist: http://howardlewisship.com/blog/2004/05/tapestry-test-assist.html
          AppFuse - http://appfuse.org

          演講的最后,Matt以一句“If it works, use it!”作為結(jié)尾,可謂精辟!

          通過此文,相信大家可以撥開當(dāng)前Java Web層框架選用上的“迷霧”,見得“月明”了。
          原演講稿請參見:http://raibledesigns.com/rd/entry/ja_sig_comparing_java_web





          re: JAVA代理機(jī)制初探 sitinspring 2007-09-09 07:07  
          真是不錯,這個方式用對地方了能有很大作為.每天看看Blogjava的首頁更新都能有所收獲,有時還有意外驚喜.
          把限制輸入文字部分和字符位數(shù)抽象出來,讓它們可以在外頭設(shè)定,MyJTextField也許能更通用一些
          比如:
          MyJTextField textField1 = new MyJTextField(MyJTextField.Letter,8);
          ....

          MyJTextField textField2 = new MyJTextField(MyJTextField.Number,10);
          ....
          MyJTextField textField2 = new MyJTextField(MyJTextField.Letter+MyJTextField.Number,12);

          共6頁: 上一頁 1 2 3 4 5 6 下一頁 
          sitinspring(http://www.aygfsteel.com)原創(chuàng),轉(zhuǎn)載請注明出處.
          主站蜘蛛池模板: 滦平县| 仪征市| 上犹县| 兴海县| 资中县| 大丰市| 高淳县| 临夏市| 铜川市| 南江县| 抚州市| 当雄县| 闽侯县| 闻喜县| 德格县| 花莲县| 泾源县| 文安县| 盐池县| 乐清市| 惠来县| 桃源县| 宜兰县| 垦利县| 刚察县| 宜君县| 密云县| 梨树县| 襄樊市| 东港市| 宣化县| 晋州市| 昂仁县| 来安县| 庄河市| 西乌| 沭阳县| 涿鹿县| 宜都市| 和硕县| 万源市|