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

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

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

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

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

    我的郵件聯(lián)系方式

    用且僅用于MSN

    博客點擊率
    free web counter
    free web counter

    常用鏈接

    留言簿(36)

    隨筆檔案

    搜索

    •  

    積分與排名

    • 積分 - 186923
    • 排名 - 309

    最新評論

    閱讀排行榜

    評論排行榜

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

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

    ??????利用春節(jié)在家的時間也剛好因為一個項目的原因比較全面的學習了一下Appfuse,確實滿好用的。我用的是WebWork2+Spring2+iBATIS2的組合,對于簡單需求基本上能完成80%+的代碼,不過也發(fā)現(xiàn)了兩處比較嚴重的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中是按照順序來取參數(shù)的,一般情況下id屬性都是作為最后一個參數(shù)被傳入,所以會報錯。如下代碼:

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

    ??????吐血推薦:Appfuse!
    posted on 2007-02-28 20:52 cresposhi 閱讀(1985) 評論(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一下,呵呵。要養(yǎng)成好的學習習慣,不清楚的東西先問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,自己也下載了源代碼來看,感觸挺深的,是個很好的項目!  回復  更多評論
      

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲人成在线精品| 中文字幕在亚洲第一在线| **一级毛片免费完整视| 免费A级毛片在线播放| 久久免费公开视频| 99在线视频免费| 欧洲乱码伦视频免费| 成人毛片手机版免费看| 热99re久久免费视精品频软件| 午夜免费不卡毛片完整版| 狠狠久久永久免费观看| 免费一看一级毛片全播放| 全亚洲最新黄色特级网站| 亚洲日韩在线第一页| 亚洲欧洲成人精品香蕉网| 欧洲亚洲国产清在高| 亚洲视频日韩视频| 亚洲一级免费视频| 亚洲aⅴ无码专区在线观看春色 | 亚洲高清视频免费| 亚洲中文无码a∨在线观看| 涩涩色中文综合亚洲| 国产亚洲视频在线观看| 香蕉免费一级视频在线观看| 在线观看肉片AV网站免费| 亚洲精品视频在线免费| 毛片免费观看的视频| 亚洲精品97久久中文字幕无码| 亚洲精品成人片在线观看精品字幕| 午夜亚洲AV日韩AV无码大全| 亚洲成人动漫在线观看| 亚洲精品动漫免费二区| 人妻巨大乳hd免费看| 久久国产精品一区免费下载| 69天堂人成无码麻豆免费视频| 日本不卡高清中文字幕免费| 中文亚洲成a人片在线观看| 在线观看亚洲人成网站| 亚洲另类无码一区二区三区| 国产免费牲交视频免费播放| 在线看片免费人成视久网|