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

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

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

    深藍(lán)色心情

    過來聊聊~~~~

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      31 Posts :: 0 Stories :: 46 Comments :: 0 Trackbacks
     
    數(shù)據(jù)庫驅(qū)動更新為classes12-9i.jar
    修改hibernate的配置如下
    代碼
    <bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor"/>

    <bean id="oracleLobHandle" class="org.springframework.jdbc.support.lob.OracleLobHandler" Lazy-init="true">
     
    <property name="nativeJdbcExtractor">
       
    <ref local="nativejdbcExtractor"/>
     
    </property>
    </bean>


    在有clob類型sessionFactory(org.springframework.com.hibernate.LocalSessionFractoryBean)中加入
    <property name="lobHandler"><ref bean="oracleLobHandle"/></property>

    在需要clob的JavaBean對應(yīng)的hbm.xml中,改對應(yīng)的clob類型的字段

    代碼
    <property
     
    name=""
     type
    ="org.springframework.orm.hibernate.support.ClobStringType"
     clumn
    =""
     length
    ="XXXXXX" <!--定義clob字段大小(以字節(jié)為單位,最大2GB)-->
    >

    JavaBean的對應(yīng)的屬性類型為String

    ------------------------------------------------------------------------------
    ----hibernate3 使用blob 和 clob 演例代碼-----

    hibernate3 使用blob 和 clob 演例代碼:

     1import java.io.File;
     2import java.io.FileInputStream;
     3import java.io.OutputStream;
     4import java.io.Writer;
     5import java.sql.Clob;
     6import oracle.sql.CLOB;
     7import org.hibernate.LockMode;
     8import org.hibernate.Transaction;
     9import org.hibernate.Session;
    10import org.hibernate.Hibernate;
    11import org.hibernate.lob.SerializableBlob;
    12import org.hibernate.lob.SerializableClob;
    13
    14
    15public class test1 {
    16
    17        /**
    18         * @param args
    19         */

    20        static Session session = HibernateSessionFactory.currentSession();
    21        
    22        public boolean inserted(TStu obj){
    23                
    24                Transaction tran = session.beginTransaction();
    25                session.save(obj);
    26                session.flush();
    27                session.refresh(obj,LockMode.UPGRADE);
    28                try
    29                {
    30                SerializableBlob sb = (SerializableBlob)obj.getImg();
    31                java.sql.Blob wrapblob = sb.getWrappedBlob();
    32                if(wrapblob instanceof oracle.sql.BLOB){
    33                         oracle.sql.BLOB blob = (oracle.sql.BLOB) wrapblob;
    34                OutputStream bout = blob.getBinaryOutputStream();
    35                FileInputStream fin = new FileInputStream("d:\\a.jpg");//修改你要存入的圖片
    36                byte [] buf = new byte[10240];//做為10K的緩存寫入
    37                int len;
    38                while((len = fin.read(buf))>0){
    39                        bout.write(buf,0,len);
    40                }

    41                bout.close();
    42                fin.close();
    43                }

    44                
    45                SerializableClob  sc = (SerializableClob)obj.getResu();
    46                Clob wrapclob = sc.getWrappedClob();
    47                if(wrapclob instanceof CLOB){
    48                        CLOB clob = (CLOB)wrapclob; 
    49                        Writer cout = clob.getCharacterOutputStream();
    50                        File file = new File("C:\\log_2005_8.txt");//修改你要存如的文本
    51                        FileInputStream fin = new FileInputStream(file);
    52                        int read;
    53                        while((read = fin.read())!= -1){
    54                                cout.write(read);
    55                        }

    56                        fin.close();
    57                        cout.close();
    58                }

    59                
    60                tran.commit();
    61                return true;
    62                }
    catch(Exception ex){
    63                        ex.printStackTrace();
    64                        tran.rollback();
    65                        return false;
    66                }

    67        }

    68        
    69        public static void main(String[] args) {
    70                // TODO Auto-generated method stub         
    71                test1 t = new test1();
    72                 TStu stu = new TStu();
    73                 stu.setAge(new Integer("23"));
    74                 stu.setName("lilei");
    75                 stu.setImg(Hibernate.createBlob(new byte[1]));
    76                 stu.setResu(Hibernate.createClob(" "));
    77                 t.inserted(stu);        
    78        }

    79}

    80
    81



    org link: http://www.matrix.org.cn/thread.shtml?topicId=27138&forumId=23
    posted on 2005-11-18 10:42 深藍(lán)色心情 閱讀(2550) 評論(2)  編輯  收藏 所屬分類: Java

    Feedback

    # re: spring+hibernate+oracle9i用clob 2006-07-08 13:02 jjs
    SerializableClob sc = (SerializableClob)obj.getResu();
    這一句提示,不能哆強(qiáng)行轉(zhuǎn)化,這是怎么回事 resu為string,  回復(fù)  更多評論
      

    # re: spring+hibernate+oracle9i用clob 2006-07-08 13:04 jjs
    像得用這種方式插入clob是否要直接跟操作String 一樣的,這個我試了一下,報錯,但網(wǎng)上有人說在這種配置下,可以直接操作clob  回復(fù)  更多評論
      

    主站蜘蛛池模板: 亚洲成人激情在线| 亚洲综合精品伊人久久| 最好看的中文字幕2019免费| 亚洲AV无码精品蜜桃| 亚洲VA综合VA国产产VA中| 91精品国产免费久久国语蜜臀 | 一个人免费日韩不卡视频| 亚洲午夜无码久久久久小说| 亚洲精品无码成人片在线观看 | 特级毛片aaaa免费观看| 337p日本欧洲亚洲大胆精品555588| 毛片基地免费观看| a色毛片免费视频| 亚洲精品乱码久久久久蜜桃| 亚洲精品无码午夜福利中文字幕| 手机在线免费视频| 精品免费视在线观看| 午夜亚洲国产理论片二级港台二级| 久久久亚洲欧洲日产国码农村| 四虎成人免费观看在线网址| 免费污视频在线观看| 在线91精品亚洲网站精品成人| 久久国产亚洲高清观看| 中文字幕亚洲激情| 日日AV拍夜夜添久久免费| 久久久久久毛片免费播放 | 免费看少妇作爱视频| 午夜免费福利小电影| GOGOGO免费观看国语| 亚洲av无码专区在线电影| 亚洲国产精品乱码在线观看97| 亚洲综合AV在线在线播放| 国产又大又黑又粗免费视频| 亚洲成年人免费网站| 野花香高清在线观看视频播放免费| 亚洲av无码有乱码在线观看| 亚洲午夜一区二区电影院| 亚洲av丰满熟妇在线播放| 久久久久久久亚洲精品| 免费在线观看你懂的| 国产高清免费观看|