首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

请教如何把String 类型转换成Blob类型

2012-06-06 
请问怎么把String 类型转换成Blob类型?数据库里有个字段是BLOB类型,用来存文件内容的。现在我要往里面写东

请问怎么把String 类型转换成Blob类型?
数据库里有个字段是BLOB类型,用来存文件内容的。
现在我要往里面写东西,但是由于用了hibernate ,数据库的所有表项都被对象化了,所以我必须自己生成得到一个Blob对象。

请问怎么把String的内容转换成BLob类型的? 目前只知道用字符流,可是不会写。

[解决办法]

Java code
    InputStream String2InputStream(String str)    {        ByteArrayInputStream stream = new ByteArrayInputStream(str.getBytes());        return stream;    }
[解决办法]
Blob blob=rs.getBlob("CONTENT");
BufferedReader BlobStream = new BufferedReader(Blob.getCharacterStream());
StringBuffer stringBuffer = new StringBuffer();

int nchars = 0; 

char[] buffer = new char[10];
while((nchars = BlobStream.read(buffer)) != -1 )

stringBuffer.append(buffer, 0, nchars);

BlobStream.close();

strDbText = Util.strTrim(stringBuffer.toString());

方法二:
BufferedReader reader = new BufferedReader(Blob.getCharacterStream());

String bb=reader.readLine();

while(bb!=null){

content += bb;

bb = reader.readLine();

}

[解决办法]
在你hibernate的实体bean里的那个String字段上加上一个@Blob注解就行了...

热点排行
Bad Request.