Hibernate往SqlServer里存入图片或二进制数据

前两天给朋友写的一段代码,特此总结在此。除Oracle以外的数据库应当都可以使用以下代码,Oracle的操作方法Hibernate.org的站长roobin有一篇文章有讲。

首先建立实体类。二进制的字段是一个java.sql.Blob类型

privatejava.sql.Blobimage;

xdoclet要用的注释:

@hibernate.property

column="image"

接下来就是保存文件的代码了,以下仅给出伪码,也很简单

Stringfname="c:\\javalogo.gif";//要入库的文件

Filef=newFile(fname);

fin=newFileInputStream(f);

要保存的实体类jtdsBlob=new要保存的实体类();

jtdsBlob.setTitle("Test1");

jtdsBlob.setImage(Hibernate.createBlob(fin));

/*

*保存实体的代码可以换成你自己的方式,当然,如果你要了解ParadiseSDK请访问

*http://paradisesdk.dev.java.net/

*/

IParadiseDAOdao=DAOFactory.getInstance();

dao.save(jtdsBlob);

dao.execute();

相关推荐