1、數據實體Bean
public class Temp?implements Serializable
{
??? private java.lang.Long???? id;
??? private Blob??????????????????? object; //用于存放對象的Blob
??? private java.lang.Long???? userId;
??? private java.util.Date?????? appendDate;
}
2、hbm影射
<hibernate-mapping package="temp">
<class name="Temp" table="TEMP">
??????? <id name="id" column="ID" type="long">
??????????? <generator class="sequence">
??????????? ?<param name="sequence">TEMP_SEQ</param>
??????????? </generator>
??????? </id>
???????? <property name="object" column="OBJECT" type="blob" />
??????? <property name="userId" column="USER_ID" type="long" />
??????? <property name="appendDate" column="APPEND_DATE" type="date" />
??? </class>?
</hibernate-mapping>
3、save方法
public void saveTemp( ) throws IOException, ClassNotFoundException, SQLException
?{
???????Temp temp = new Temp();
????????temp.setUserId(new Long(1));
????????temp.setAppendDate(new Date());
????????ByteArrayOutputStream outputstr = new ByteArrayOutputStream();
????????ObjectOutputStream objOutStr = new ObjectOutputStream( outputstr );
????????objOutStr.writeObject( contract );????????????????????????? //contract為要保存的對象;
????????BlobImpl blob = new BlobImpl(outputstr.toByteArray());
????????temp.setObject( blob );
????????saveTemp(temp);?????????????????????????????????????????????????????//將Temp持久化到數據庫;
?}
4、get方法
public void etTempList() throws IOException, ClassNotFoundException, SQLException
?{
????????List Templist = getTempList( userId);
????????if( contractTemplist.size() != 0 )
????????{
????????????????Temp temp = ( Temp )Templist.get(0);
???????????????ObjectInputStream instr = new ObjectInputStream(temp.getObject().getBinaryStream());
????????????????Contract contract = ( Contract )instr.readObject();
???????????}
?}
posted on 2006-09-24 16:24
小平 閱讀(539)
評論(0) 編輯 收藏 所屬分類:
java