我想通過設置爲一個blob,以便日後檢索保存在數據庫(H2)的Java ArrayList。如果這是一個不好的方法,請說 - 我一直無法找到這方面的很多信息。難度設置ArrayList爲java.sql.Blob保存在數據庫中使用休眠
我在數據庫中有一個Blob類型的列,Hibernate使用java.sql.Blob映射到這個列。我掙扎的代碼是:
Drawings drawing = new Drawings();
try {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = null;
oos = new ObjectOutputStream(bos);
oos.writeObject(plan.drawingPane21.pointList);
byte[] buff = bos.toByteArray();
Blob drawingBlob = null;
drawingBlob.setBytes(0, buff);
drawing.setDrawingObject(drawingBlob);
} catch (Exception e){
System.err.println(e);
}
我想保存到BLOB(plan.drawingPane21.pointList
)目的是ArrayList<DrawingDot>
類型,DrawingDot
被實施Serializable
的自定義類。
我的代碼在drawingBlob.setBytes(0, buff);
上失敗NullPointerException
。
幫助讚賞。