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

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

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

    nighty

    折騰的年華
    posts - 37, comments - 143, trackbacks - 0, articles - 0

    無(wú)奈只能放棄iBatis

    Posted on 2009-08-21 16:52 寒武紀(jì) 閱讀(4325) 評(píng)論(24)  編輯  收藏 所屬分類(lèi): 心得
        最近的二個(gè)項(xiàng)目,由于規(guī)模較小,都是十張表之內(nèi),而且表關(guān)聯(lián)非常少。所以用了一下iBatis做為數(shù)據(jù)庫(kù)關(guān)系映射,本著減少手寫(xiě)JDBC代碼的目的,想著可以減少工作量。但是卻遇到了二個(gè)令人郁悶的問(wèn)題。由于環(huán)境的限制,使用了jdk1.4.x編譯的iBatis2.3版本,沒(méi)有使用最近的。

        第一問(wèn)題:  其中的一個(gè)項(xiàng)目,有一個(gè)表為它配置了sql Map的一個(gè)delete操作,非常簡(jiǎn)單,大概就是delete from xxx where id=#value#這樣的語(yǔ)句,然后用sqlMapClient進(jìn)行操作,日志打印完全正常,沒(méi)有報(bào)任何Exception,返回影響記錄數(shù)也是正確的。但是進(jìn)數(shù)據(jù)庫(kù)一看,巍然不動(dòng)!左查查,右查查,查不出任何毛病。更奇怪的是,數(shù)據(jù)庫(kù)表之間的所有關(guān)聯(lián)和索引全部取消,還是存在這問(wèn)題。其它的三個(gè)字段比較少的表,這樣配置,同樣的api調(diào)用卻正常!這個(gè)出問(wèn)題的數(shù)據(jù)庫(kù)表字段大概20+個(gè)左右。

        第二個(gè)問(wèn)題:另一個(gè)項(xiàng)目,是二期重構(gòu),本來(lái)一期也不復(fù)雜,全部是使用JDBC實(shí)現(xiàn)的,只是有些表的字段太多,JDBC寫(xiě)到煩,特別是處理一些NULL的插入,還有批處理時(shí)異常日志的詳細(xì)處理也有點(diǎn)煩。近期做二期升級(jí),就算采用iBatis來(lái)減少一些代碼量,于于喜涮涮地搞上去了,代碼的確減少了許多。單元測(cè)試也能通過(guò),后來(lái)就設(shè)置了比較復(fù)雜的數(shù)據(jù)。發(fā)現(xiàn)問(wèn)題的現(xiàn)場(chǎng)如下:在一個(gè)業(yè)務(wù)接口中,一個(gè)事務(wù)中包含了許多SQL操作,有delete,也有insert,大概十個(gè)sql語(yǔ)句左右,全部放在一個(gè)batch中執(zhí)行,整個(gè)batch提交一個(gè)事務(wù)。測(cè)試環(huán)境提供了31個(gè)類(lèi)似的業(yè)務(wù)數(shù)據(jù),總共執(zhí)行31個(gè)事務(wù),采用for的循環(huán)執(zhí)行調(diào)用,每逢索引 i = 10*n  的時(shí)候就會(huì)卡住,這個(gè)操作得花很長(zhǎng)時(shí)間,最后能通過(guò)。后來(lái)進(jìn)行跟蹤,發(fā)現(xiàn)是在執(zhí)行第一個(gè)語(yǔ)句delete一個(gè)記錄(delete from xxx where id='xx')同樣也是單表刪除。搜索了google,baidu,沒(méi)有任何資源,翻遍了文檔沒(méi)有任何說(shuō)明,查了網(wǎng)站FAQ也沒(méi)有辦法。于是,只能.......郁悶!

       為什么遇到delete都會(huì)有這個(gè)問(wèn)題?不曉得有沒(méi)有高手遇到同樣的問(wèn)題,這里算是總結(jié)的同時(shí)也提問(wèn),希望有遇到相同類(lèi)型的高手給個(gè)解決的方案。如果不行,就得倒回去用JDBC實(shí)現(xiàn),就此iBatis的體驗(yàn)使用也就擱置,估計(jì)以后也不會(huì)碰它了。Hibernate就不用了,有點(diǎn)小題大作。
       google了才知道,原來(lái)iBatis的書(shū)籍、論壇、資料、討論等等相比Hibernate要少很多。學(xué)習(xí)是很簡(jiǎn)單,但是遇到這種細(xì)節(jié)的時(shí)候,又不太愿意花時(shí)間去研究源代碼(都是現(xiàn)實(shí)所逼,有個(gè)球時(shí)間呀?)。所以選框架要慎重!!!

    剛進(jìn)場(chǎng)的時(shí)候戲就落幕

    Feedback

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-21 17:06 by lianyeyu
    應(yīng)該是沒(méi)有設(shè)置好。用過(guò),但沒(méi)有出現(xiàn)這個(gè)問(wèn)題。

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-21 17:08 by 長(zhǎng)生界
    事先沒(méi)搞好調(diào)查

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-21 17:20 by paul
    不會(huì)這么慘吧

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-21 17:28 by 移動(dòng)12530彩鈴
    不是吧

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-21 17:45 by a
    其實(shí)讀源碼才是最省時(shí)間的方法。

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-21 17:49 by 王兵
    看看ibatis的源碼不就知道了 自己跟蹤一下 把源碼包弄到你們的工程里面去

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-21 20:30 by aa
    Ibatis也很無(wú)奈~

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-21 20:58 by 隔葉黃鶯
    簡(jiǎn)單 google 查不到,開(kāi)源的東西,源碼都明擺著,留著源碼不看,楞著頭想還不大大的浪費(fèi)時(shí)間嗎!

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-21 22:04 by leekiang
    要成為高手,就得看源代碼。

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-22 08:35 by lazy
    ibatis的相關(guān)資料是少,不過(guò)jdbc的資料雖然多,但是也有很多疑難雜癥會(huì)讓人束手無(wú)策。
    也不能指望人人都去看源碼,且人人都看得懂源碼。

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-22 09:31 by 烏黑的大白馬
    不太可能是iBatis的問(wèn)題,iBatis不過(guò)充當(dāng)了一個(gè)集中SQL管理的地方,增刪查改還是靠jdbc實(shí)現(xiàn)的啊。我公司的產(chǎn)品幾百?gòu)埍恚瑤资畟€(gè)字段的表多得是,從來(lái)也沒(méi)出現(xiàn)過(guò)你這種問(wèn)題。建議你還是從數(shù)據(jù)庫(kù)、還有事務(wù)處理著手,看看是不是設(shè)計(jì)本身的問(wèn)題。

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-22 20:56 by 老姜
    一看就知道是事務(wù)的問(wèn)題了,你用的是什么數(shù)據(jù)庫(kù),你配置事務(wù)了嗎

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-22 21:44 by 樂(lè)蜂網(wǎng)
    事先沒(méi)搞好調(diào)查

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-23 19:42 by ibatis
    IBATIS大喊冤枉,這么簡(jiǎn)單的框架都用不好:(

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-24 09:53 by Nicholas
    沒(méi)遇到過(guò)類(lèi)似樓主所說(shuō)的問(wèn)題,我想可能是配置有問(wèn)題吧。
    iBATIS還是挺簡(jiǎn)單的一個(gè)框架,樓主多多研究一下吧。

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-24 10:47 by littleredboy
    不去學(xué)習(xí)源代碼,永遠(yuǎn)都是菜鳥(niǎo)
    碰到問(wèn)題就放棄,還是菜鳥(niǎo)
    你這樣發(fā)展下去,就是菜鳥(niǎo)

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-24 17:41 by VIIV
    是不是和數(shù)據(jù)庫(kù)事務(wù)設(shè)置有關(guān)系,我們也用ibatis的框架,一個(gè)批處理幾千萬(wàn)的數(shù)據(jù)沒(méi)有出現(xiàn)這種情況。
    我覺(jué)得ibatis還是很好的一個(gè)框架,手寫(xiě)的SQL比較放心些。

    # re: 無(wú)奈只能放棄iBatis[未登錄](méi)  回復(fù)  更多評(píng)論   

    2009-08-24 21:18 by Lv Yuanfang
    沒(méi)有任何根據(jù)的胡亂猜測(cè)。。手寫(xiě)的sql才放心。。

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-08-25 11:35 by zhuxinyu
    我想肯定是lz用錯(cuò)了, 我們項(xiàng)目一直都用的是ibaties ,都幾年了。 目前沒(méi)出現(xiàn)任何不能解決的問(wèn)題. 仔細(xì)找找,切勿因此而影響對(duì)iBATIS的看法

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-10-11 22:19 by 阿水
    可能是跟事務(wù)沒(méi)提交有關(guān)

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2009-11-01 18:58 by spingNo1
    ibatis的確很傻b,用的人更傻b。

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2010-08-16 08:56 by 游客
    有沒(méi)有在最后執(zhí)行 session.commit()?

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2011-03-18 18:39 by leekiang
    哥們現(xiàn)在回頭再看看這篇文章,覺(jué)得還是ibatis的問(wèn)題嗎?

    # re: 無(wú)奈只能放棄iBatis  回復(fù)  更多評(píng)論   

    2012-05-16 11:38 by 王鵬飛
    ibatis一直在用,沒(méi)有那樣的問(wèn)題
    主站蜘蛛池模板: 国产成人精品日本亚洲直接 | 日韩在线a视频免费播放| 狠狠躁狠狠爱免费视频无码| 亚洲人配人种jizz| 久久水蜜桃亚洲av无码精品麻豆| 亚洲 综合 国产 欧洲 丝袜| 野花高清在线观看免费3中文| 人妻免费一区二区三区最新| 精品亚洲成a人在线观看| 亚洲成人动漫在线观看| 亚洲VA成无码人在线观看天堂| 免费二级毛片免费完整视频| 91在线视频免费看| 91免费福利精品国产| 中文字幕无码日韩专区免费| xvideos永久免费入口| 精品视频免费在线| 爱爱帝国亚洲一区二区三区| 国产亚洲中文日本不卡二区| 亚洲色图古典武侠| 久久亚洲AV成人无码电影| 久久香蕉国产线看观看亚洲片| 亚洲午夜福利精品久久| 亚洲国产成人爱av在线播放| 国产一级淫片视频免费看| 大地资源免费更新在线播放| 久久免费看黄a级毛片| 免费人成在线观看网站品爱网| 一个人免费视频在线观看www| 国产黄色免费观看| 久久久久久久国产免费看| 一级做a免费视频观看网站| 免费看一级一级人妻片| 特级毛片A级毛片100免费播放| 国产精品日本亚洲777| 蜜桃传媒一区二区亚洲AV| 朝桐光亚洲专区在线中文字幕| 亚洲av综合av一区二区三区 | 亚洲AV无码专区日韩| 免费又黄又硬又爽大片| 亚洲日韩人妻第一页|