七郎's JavaBlog

          草木竹石皆可為劒。至人之用人若鏡,不將不迎,應(yīng)而不藏,故能勝物而不傷。
          posts - 60, comments - 14, trackbacks - 0, articles - 0

          Hibernate+Oracle+CLOB的讀寫問題

          Posted on 2007-04-16 15:36 七郎歸來 閱讀(659) 評論(2)  編輯  收藏

          我的環(huán)境是Oracle9i2+hibernate3
          使用原配的Oracle jdbc thin 驅(qū)動(dòng)不能直接對clob對象進(jìn)行直接操作。
          google了無數(shù)文章,仿造別人的辦法,先寫入一個(gè)空的clob對象,再讀出,再寫入真正的clob對象。不行,在BLOB blob =(BLOB) myObject.getClob 這里的類型強(qiáng)制轉(zhuǎn)化就會(huì)出現(xiàn)問題。

          使用hibernate官方論壇里面的重寫一個(gè)數(shù)據(jù)類型的方式,則是出現(xiàn)String長度的錯(cuò)誤。還試了很多種辦法,均失敗。

          據(jù)說,Oracle 9i 里的jdbc oci驅(qū)動(dòng)可以解決上面的問題,但我已經(jīng)沒有興趣再去折騰了。

          最后到Oracle網(wǎng)站上面注冊了一個(gè)賬戶,下載了最新的Oracle 10g的jdbc驅(qū)動(dòng)。
          一切就正常了。其實(shí)就是Oracle原來的驅(qū)動(dòng)的問題。

          使用新的驅(qū)動(dòng),這個(gè)問題就不再是問題了。

          Hibernate+Oracle+CLOB的讀寫其實(shí)只要這樣做:

          1.在Oracle里設(shè)置某字段為clob類型。
          2.在Hibernate的配置文件里使用網(wǎng)上下載的Oracle 10g最新的jdbc驅(qū)動(dòng)。
          3.實(shí)體類里把clob字段對應(yīng)的屬性類型設(shè)置為String。
          4.hibernate的映射文件*.hbm.xml里把該字段對應(yīng)的類型該為text。

          然后就可以在程序里把它當(dāng)成String隨便用了。 

          Feedback

          # re: Hibernate+Oracle+CLOB的讀寫問題   回復(fù)  更多評論   

          2012-09-20 17:08 by 天梯圖
          不行啊··

          # re: Hibernate+Oracle+CLOB的讀寫問題   回復(fù)  更多評論   

          2012-09-20 17:08 by 天梯圖
          啟動(dòng)就報(bào)類型錯(cuò)誤····

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 大关县| 克山县| 长宁区| 阿克陶县| 栾川县| 进贤县| 巴林右旗| 浙江省| 普洱| 安化县| 炉霍县| 雷山县| 朝阳区| 怀安县| 桦川县| 随州市| 纳雍县| 苗栗市| 皋兰县| 崇文区| 凤庆县| 祁阳县| 荆州市| 云安县| 慈利县| 江山市| 宝清县| 宣威市| 五大连池市| 丹巴县| 高青县| 兴海县| 阳信县| 丹阳市| 彰化县| 龙江县| 晋江市| 大悟县| 曲松县| 巍山| 蚌埠市|