關于Clob存儲xml封包解決方案
最近項目中需要存儲封包資訊,拿到的封包是字元串形式,從網上找了一大圈,才找到了一種方法。操作如下:
一、資料庫中設計表字段類型
在oracle中,存儲超大檔案有兩種存儲方式,一種是BLOB類型,這種适合存儲二進制流類型檔案的。一種是CLOB類型,這種一般是用來儲存大文本字段。在項目中存儲的是xml字元串類型,是以選擇CLOB類型。
二、在hibernate映射檔案中設定
在xxx.hbm.xml檔案中,把對應的clob類型字段設定成text類型,即如:
<property name = "xxx" type="text"/>
三、背景代碼儲存
Student s = new Student();
//假設name屬性為clob類型
s.setName("要儲存的超大字元串xml文本資訊");
//這裡用hibernate中的save方法儲存就行
session.save(s);
這樣就會儲存成功,并且可以在資料庫中檢視到具體的xml封包資訊。