隨筆 - 81  文章 - 1033  trackbacks - 0
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          在浮躁的年代里,我們進取心太切,患得患失;虛榮心太強,戰戰兢兢。一心爭強好勝,惟恐榜上無名。
          I think I can fly , and flying like a bird !
          程序員一名,已售出,缺貨中!

          我的郵件聯系方式

          用且僅用于MSN

          博客點擊率
          free web counter
          free web counter

          常用鏈接

          留言簿(36)

          隨筆檔案

          搜索

          •  

          積分與排名

          • 積分 - 187038
          • 排名 - 309

          最新評論

          閱讀排行榜

          評論排行榜

          ??????以前聽很多人說Appfuse好,但一直沒時間看看,也因為是外國人的東西,文檔主要還是英文的。后來看了SpringSide(國人寫的同類框架,其實我更愿意稱他們為Auto Build Tools),國人寫的,文檔好讀。確實發現這類Tools確實是好,好在哪里?主要不是說他們有多方便,讓你開發省多少事,而是他們有一個共同特點:使用業界最新、最好、最流行的技術和相關框架程序,并且他們都是最佳實踐(Best Practises),更重要的是配備了相當簡單易懂但重點突出的文檔。是學習和使用最新、最好、最流行技術的最好幫手,讓你很快上手,免去了一個很漫長的去粗取精的過程。

          ??????就象SpringSide的Wiki文檔,我覺得是不可不讀的好東西,雖然不深入,但基本上涵蓋了現在最好用的技術并給予了重點突出的講述。但SpringSide跟Appfuse比起來在規模上還是有相當大的差距,就從框架而言Appfuse基本上涵蓋了所有的主流框架的組合。并且Appfuse對框架封裝的更少,生成的代碼更容易學習。我覺得這是SpringSide從某個角度來講不太好的地方。Appfuse的Wiki中文頁也在不斷的完善中,所以如果你想學習那些最好最流行的東西吐血推薦玩一玩Appfuse(用Appfuse真的象玩一樣,跑一跑腳本程序就好了,呵呵)。

          ??????利用春節在家的時間也剛好因為一個項目的原因比較全面的學習了一下Appfuse,確實滿好用的。我用的是WebWork2+Spring2+iBATIS2的組合,對于簡單需求基本上能完成80%+的代碼,不過也發現了兩處比較嚴重的BUG,貼出來大家注意一下,也免得自己忘記了。

          ??????我使用的是appfuse-webwork-1.9.4的版本,使用WebWork2+Spring2+iBATIS2組合。

          ?1. 生成的WebWork2部分的一個定義驗證器的文件有錯。
          ??????即WEB-INF/classes/validators.xml文件,Appfuse把它象用戶自定義的驗證文件一樣加了一個dtd標簽:

          <!DOCTYPE?validators?PUBLIC?"-//OpenSymphony?Group//XWork?Validator?1.0//EN"?"http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd">

          ??????而在這個文件里是不能加的,我測試的在WINDOWS XP下沒有問題,但是到WINDOWS 2000下就會報錯。

          2. iBATIS的SQL MAP文件的updata語句的輸入parameterMap有錯。
          ??????Appfuse會把id屬性生成為第一個,而updata statment中是按照順序來取參數的,一般情況下id屬性都是作為最后一個參數被傳入,所以會報錯。如下代碼:

          1????<parameterMap?id="updateParam"?class="tbaccidentType">
          2??????????????<parameter?property="typeid"?jdbcType="INTEGER"?javaType="java.lang.Integer"/>
          3??????????<parameter?property="name"?jdbcType="VARCHAR"?javaType="java.lang.String"/>
          4????</parameterMap>

          ??????這張表中主鍵為typeid,有一個屬性為name,而updata statment代碼如下:

          1????<update?id="updateTbaccidentType"?parameterMap="updateParam">
          2????<![CDATA[
          3????????update?tbaccident_type?set
          4???????????????????name?=??
          5????????where?typeid?=??
          6????]]>
          7????</update>

          ??????很顯然,id應該是在最后傳進去。


          ??????我對Appfuse研究時間也不長,就發現這兩個bug,可能STRUTS+SPRING+HIBERNATE用的人最多吧,WEBWORK和iBATIS用的人比較少,存在BUG的可能性比較大,不過作為學習其實還是希望碰到些BUG,沒有BUG也不能叫程序了,希望Appfuse能發展的更好,真是感慨和佩服作者對各種框架的了解程度。

          ??????吐血推薦:Appfuse!
          posted on 2007-02-28 20:52 cresposhi 閱讀(1987) 評論(4)  編輯  收藏

          FeedBack:
          # re: Appfuse中使用WebWork2+Spring2+iBATIS2的幾個BUG 2007-03-13 17:50 穎穎
          能不能解釋一哈bug是什么意思啊?  回復  更多評論
            
          # re: Appfuse中使用WebWork2+Spring2+iBATIS2的幾個BUG 2007-03-13 22:24 施偉
          google一下,呵呵。要養成好的學習習慣,不清楚的東西先問google,比較深刻,呵呵。  回復  更多評論
            
          # re: Appfuse中使用WebWork2+Spring2+iBATIS2的幾個BUG[未登錄] 2007-07-15 12:38 sclsch
          mark  回復  更多評論
            
          # re: Appfuse中使用WebWork2+Spring2+iBATIS2的幾個BUG 2007-07-16 15:10 kenzhang
          以前在學校的時候,老師也極力推薦我們去搞懂AppFuse,自己也下載了源代碼來看,感觸挺深的,是個很好的項目!  回復  更多評論
            

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


          網站導航:
           
          主站蜘蛛池模板: 山丹县| 芜湖市| 绍兴县| 东城区| 肃宁县| 南陵县| 禹州市| 瑞安市| 永宁县| 八宿县| 化州市| 弋阳县| 正蓝旗| 清新县| 乐昌市| 和顺县| 旬阳县| 铜陵市| 墨脱县| 松原市| 彝良县| 张家川| 万年县| 丰宁| 舒兰市| 昌邑市| 莱阳市| 马山县| 湖北省| 航空| 黄骅市| 五常市| 阿拉善左旗| 贺州市| 庆云县| 阜南县| 临安市| 酉阳| 施甸县| 漳州市| 沙河市|