當前訪問本站: hits

          yjhmily

          堅持走自己的路……

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            100 Posts :: 8 Stories :: 353 Comments :: 0 Trackbacks
          ??? 從畢業到現在,一直用struts在開發!對struts標簽用的算是比較多了,也確實非常喜歡struts的風格!

          ??? 可最近接觸一些朋友,包括在網上看到一些文章,發現大家對struts標簽的影響好像并不怎么樣!很多公司用struts的MVC卻不用他的標簽,也有很多朋友就是覺得JSTL比較好!

          ??? 一直很納悶這個問題,這里只想說說自己用struts標簽的感受!

          ??? 一、美觀的標簽風格

          ??? ?? 標簽風格與普通的html標簽完全一樣,各種標簽屬性的注入不使用任何特殊符號,保證了jsp頁面的統一和美觀;
          ??? ?? 同樣是在頁面上輸出某個Bean的屬性,用struts的<bean:write name="beanName" property="name" />標簽看上去多簡潔明了。但如果用JSTL的<c:out value="${beanName.name}" />則需要使用特殊符號$,看上去極其別扭!另外出錯率也是相對比較高的!比如寫掉了一個
          “}”,頁面也卻不報語法錯,如果不運行該頁面,我相信你是很難查出來的!


          ??? 二、強大的功能

          ??? ?? 普通的輸出,循環迭代、比較判斷、鏈接、下拉框、等等功能,對struts標簽和JSTL來說都沒有任何問題!
          ??? ?? 但如果要實現多語言,我相信絕對不會有人忘記struts的<bean:message/>標簽,有了<bean:message/>標簽,咱們的jsp頁面上真的就不用出現任何的文字描述了!這樣的頁面代碼難道可讀性不高嗎?下面是我的一個簡單頁面,感受一下!呵呵 !

          ??? ?? strutsTag.JPG

          ??? ?? 另外,你如果在jsp頁面上寫一些javascript腳本,用于驗證的話,提示信息肯定是必不可少的!為了頁面美觀,你同樣可以寫alert('<bean:message key="XXX"/>');這樣的代碼來彈出提示信息,絕對沒有任何問題! :-)

          ??? ??? <html:errors/>標簽就不用我多說了吧!用來顯示ValidatorPlugIn框架攔截信息的不二選擇!


          ??? 三、支持自定義標簽

          ??? ?? 在實際開發過程我們都會碰到一些特殊的業務邏輯,不管是用struts還是JSTL都比較難直接解決!這個時候,struts對自定義標簽的支持就突顯優勢了!

          ??? ?? 首先,根據你的個人喜好,用任意名稱定義一個簡單的tld(yjhmily.tld),然后在tld中,定義你的標簽簽名(<yjhmily:page/>)和屬性,然后寫一個繼承BodyTagSupport(還有其他父類)的類,根據具體業務邏輯寫幾個方法;最后在頁面上引入標簽<yjhmily:page name="XXX" href="XXX"/>,基本就ok了!大有一行標簽抵好幾行代碼的感覺!呵呵!

          ??? ?? 我的jsp頁面:
          ??? ?? ?? ?? ?? ??
          ??? ?? ?? ?? ?? ?? page.JPG
          ??? ??

          ??? ?? 接下來只需要在action中往請求里存入解得列表的sql語句.
          ??? ?? 頁面效果如下:

          ??? ?? ?? ?? ?? page1.JPG

          ???? ?? 個人覺得這樣的自定義標簽,在團隊開發中效果還是非常明顯的,每個人都不用去關心分頁的具體邏輯,只需要自己寫sql語句,然后在頁面引用標簽就ok了!

          ??? ?? struts標簽還有很多其他的好處,這里就不一一描述了!總之,強烈支持struts標簽!

          ??? ? 歡迎各位指點!

          ????

          ???
          ???
          posted on 2006-09-26 13:09 kangxm 閱讀(3641) 評論(25)  編輯  收藏 所屬分類: J2EE

          Feedback

          # re: 我用struts標簽的感受 2006-09-26 13:19 sqhe18
          我覺得使用struts標簽的最大的問題就是,所見即所得的網頁開發工具對他沒有支持,如果你用了struts的標簽,那這個jsp在DW里面就面目全非了。  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 13:57 kangxm
          DW 8 對struts的標簽就有支持啊!把寫有struts標簽的jsp放在Dreamweaver 8里面是一點問題都沒有的!完全不影響布局!更不會出現面目全非的可能!

          我們現在就這么做的!呵呵!

          至于DW的其他版本,我自己沒試過,不好發表意見!  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 16:13 onejavaer
          struts標簽的缺點最慘莫過于對標簽的嵌套支持不好!  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 16:27 lingo
          我的感覺是標簽不夠靈活,而且侵入性太大。好多功能沒有提供。而且我希望盡可能不自己寫tld。  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 16:44 fengzl
          自定義標簽根本不夠靈活,而且增加程序的閱讀難度~~  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 17:00 xuefeng
          jsp標簽看上去很好,真正用起來一點也不好用,因為網頁設計人員很難理解這些標簽,許多開發人員還熱衷開發功能復雜的標簽,把邏輯混在顯示里,導致頁面越來越難以維護。

          真正好用的view技術是velocity和tapestry,因為完全沒有業務邏輯,所以強迫你設計出一個清晰的MVC實現,大大簡化了頁面設計  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 17:40 Supergoal
          對于美觀的問題,我并不覺得${beanName.name}這樣的寫法有什么別扭,習慣了就好。而且目前有些IDE是能夠在編譯前就報這種EL的語法錯誤的,像BEA Workshop就可以,而且在輸入beanName之后打“.”,編譯器還會有智能提示。

          普通的輸出,循環迭代、比較判斷、鏈接等等功能使用JSTL都可以實現,I18N也同樣可以,在Javascript代碼中輸出信息當然也完成能做到。至于Validator框架確實是Struts的一個亮點,但對于一些不需要支持I18N的應用程序來說,每次都得在資源文件中輸入信息略顯麻煩,一般來說我都會采用JPetStore中的做法,在HttpServletRequest中加入Error的一個List,然后在JSP中用<c:forEach>來集中顯示。

          對于自定義標簽的問題,我是比較贊成使用的,這樣會使頁面中的Scriplet數量減少,提高代碼的重用性。但自定義標簽并不是Struts的東西,而是J2EE Specification中提供的接口,并應用程序供應商提供實現的。

          就我個人而言,不愿意在JSP中使用Struts標簽的原因主要是一個,因為它不是標準,是Struts的專有實現,這樣就造成了MVC中的V與Struts的耦合。所以當Struts標簽和JSTL標簽都可以實現功能的時候,當然會先考慮JSTL的。  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 20:43 lizongbo


          樓主對jstl的了解還停留在幾年以前的jstl1.0。

            回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-26 23:31 劍事
          用過幾種后感覺STRUTS標簽比較差  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-27 09:18 kangxm
          呵呵!感謝大家拍磚!這么多人說Struts標簽不好,看來小弟真的應該好好去學習學習JSTL和Velocity了!

          從美觀角度講,確實是習慣就好了!也許正因為我一開始就學著Struts,并且一直在用,所以就比較習慣吧!

          至于Validator框架,我覺得還是Struts的<html:errors/>標簽比較占優勢,即使你用實體FormBean的validate方法來進行驗證,同樣是需要用<html:errors/>標簽在頁面上輸出錯誤信息的!

          如果 "采用JPetStore中的做法,在HttpServletRequest中加入Error的一個List,然后在JSP中用<c:forEach>來集中顯示" 。實現是沒有什么問題,但錯誤信息在頁面顯示的位置好像有所限制吧 !最要命的問題是,總是要自己往請求中加入ERRORS的列表!個人覺得麻煩度也蠻高!

          自定義標簽就不說了,肯定是非常必要的!對于代碼重用是突現效果!
            回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-27 09:44 demo java
          用熟練了,什么都好  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-27 12:27 stoneshao
          <c:out value="${beanName.name}" />不是更簡潔嗎?這就是el的功能  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-27 12:39 #
          為什么不直接${beanName.name}  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-27 15:09 多一嘴
          自定義標簽就是自定義標簽,并不是STRUTS提供的。  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-27 20:09 jackhlp
          DW有網站上面有一個讓DW支持Struts的插件,可以用那個  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-28 09:34 冰川
          個人認為與Struts標簽沒有關系,他們不滿Struts多是因為JSP的缺陷。  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-09-28 22:25 kangxm
          終于有人站出來為struts說話了!不容易啊!  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-10-26 09:48 demo java
          只要熟悉,直接嵌入代碼我認為都沒有問題,只要你能掌握好界面。  回復  更多評論
            

          # re: 我用struts標簽的感受 2006-11-03 23:48 syy
          更習慣JSTL  回復  更多評論
            

          # re: 我用struts標簽的感受 2007-09-28 17:06 kimsoft
          現在只用html-el + jstl,其它的都不用。  回復  更多評論
            

          # re: 我用struts標簽的感受 2007-10-09 15:40 fenix
          jstl沒有DW支持不是再界面展現方面更難搞?  回復  更多評論
            

          # re: 我用struts標簽的感受 2007-11-11 16:25 地方
          jstl  回復  更多評論
            

          # re: 我用struts標簽的感受 2008-05-07 15:59 zwm
          struts 標簽的嵌套太惡心  回復  更多評論
            

          # re: 我用struts標簽的感受[未登錄] 2008-10-21 08:02 zz
          直接用${beanName},如果它的值是<h1>名字</h1>,就會顯示h1號大的字體,而不是原樣輸出,所以要加<c:out />@#
            回復  更多評論
            

          # re: 我用struts標簽的感受 2009-09-22 10:43 空城
          暫時還沒有用熟Struts標簽,還是覺得jstl比較好用!  回復  更多評論
            

          主站蜘蛛池模板: 湘西| 鄂州市| 德惠市| 枞阳县| 云霄县| 航空| 虎林市| 凭祥市| 奉节县| 三都| 梅河口市| 苏尼特左旗| 镇安县| 务川| 积石山| 鄂尔多斯市| 托克托县| 盐城市| 黄冈市| 石狮市| 微山县| 普洱| 合江县| 闽清县| 根河市| 马尔康县| 福建省| 南投市| 延寿县| 靖远县| 湘阴县| 紫云| 依安县| 巩义市| 高阳县| 如东县| 武穴市| 石渠县| 雅安市| 蓝田县| 临潭县|