`

Hibernate操作Blob,将Blob转换为String

阅读更多
public String getScenicCoord(String pk) {
    log.debug("根据景区唯一标示获取景区坐标!");
    String sql = "select wkt from JQGEO where id = '" + pk + "'";
    String result = "";
    try {
    Connection conn = getSession().connection();
    PreparedStatement ps = conn.prepareStatement(sql);
    ResultSet set = ps.executeQuery();
    if(set.next()) {
    Blob blob = set.getBlob(1);
    //这种方式看起来没有什么问题,但是数据类型及参数未知的错误会在莫名的情况下出现
    //int len = (int)blob.length();
    //byte[] bt = blob.getBytes(0, len);
    //String str = new String(bt);
   
    //这种转换后的方式倒是能够正常的将二进制流转换为String类型数据
    InputStream in = blob.getBinaryStream();
    int size = in.available();
    byte[] by = new byte[size];
    in.read(by);
    result = new String(by);
    }
    }catch (Exception e) {
log.error("根据景区唯一标示获取景区坐标失败!");
result = null;
try {
throw e;
} catch (Exception e1) {
e1.printStackTrace();
result = null;
}
}
    return result;
    }
分享到:
评论

相关推荐

    Hibernate对BLOB CLOB操作

    为了实际读取和写入BLOB和CLOB,你需要从文件系统读取数据,然后将其转换为InputStream或Reader,再使用Hibernate提供的方法。例如,你可以使用FileInputStream读取文件,然后将它转换为BLOB,类似地,使用...

    hibernate对Blob类型字段进行数据添加.txt

    本文档将详细介绍如何使用 Hibernate 对 Blob 类型字段进行数据添加的过程,并通过实际代码示例来展示具体的操作步骤。 #### Hibernate Blob 数据处理原理 在 Hibernate 中,Blob 类型的字段通常被映射为 `java....

    hibernate保存blob,clob对象

    总结,Hibernate通过`@Lob`注解支持BLOB和CLOB的持久化,开发者需要适当地将数据转换为对应的对象类型,然后使用Hibernate的CRUD操作进行保存和检索。同时,要注意性能优化,如懒加载和数据库特定的最佳实践。

    Hibernate对Blob,Clob的操作

    在Java Web开发中,...本文将详细介绍如何在Hibernate中操作Blob和Clob字段,实现数据的存储与读取。 首先,我们需要在Hibernate映射文件(.hbm.xml)中定义Blob和Clob字段。对于Blob,可以这样声明: ```xml ...

    Hibernate操作Oarcle中Clob、Blob字段小结

    - 包含在`bigstring_oracle_src`可能有示例代码,展示了如何在Java中创建Clob和Blob对象,以及如何通过Hibernate进行插入、更新和查询操作。 总之,理解并熟练掌握Hibernate对Oracle中的Clob和Blob字段的操作,是...

    jdbc+hibernate存取blob字段

    但是,注意在写入BLOB数据时,依然需要将文件内容转换为`InputStream`,传递给Hibernate的`Blob`实现。 总结来说,无论是使用JDBC还是Hibernate,处理Oracle数据库的BLOB字段都需要了解其特殊性,尤其是BLOB字段的...

    oracle+hibernate 处理blob +uploadify实例

    `photo`属性使用`BlobByteArrayType`类型,这允许Hibernate将字节数组转换为Blob类型,并存储在`PHOTO`列中。 ```xml <hibernate-mapping> <!-- ... --> ...

    JDBC+Hibernate将Blob数据写入Oracle

    本篇将详细介绍如何利用JDBC和Hibernate框架将Blob数据写入Oracle数据库。 首先,Blob数据类型的优点在于其比Long字段有更好的性能,适合存储大量的二进制数据。然而,Blob字段的写入方式与普通字段有所不同,因为...

    使用JDBC和Hibernate来写入Blob型数据到Oracle中

    如果使用Hibernate,操作Blob会更加简洁,因为Hibernate提供了对Blob对象的直接映射。你需要在实体类中定义一个Blob类型的属性,并在映射文件中配置它。然后,你可以直接将文件流写入这个属性,Hibernate会自动处理...

    关于在Hibernate中对于Clob,Blob字段的处理方法

    Oracle数据库提供了支持Clob和Blob的接口,而Hibernate作为与数据库交互的中间层,提供了便捷的方式来操作这些大型对象。 首先,Clob类型主要用来存储大量字符数据,例如长篇的文本、XML文档等。Blob则用于存储二...

    对blob大数据的操作——图片上传与显示*(自己实践可用)

    在XX.hbm.xml文件中,我们需要将图片类型的列属属性类型改成type="org.springframework.orm.hibernate3.support.BlobByteArrayType",因为采用Hibernate转换时会自动将Blob类型转换成String类型。在Bean中,我们需要...

    spring mvc+hibernate 图片存储至blob

    当用户上传图片时,Spring MVC Controller中的逻辑会将接收到的`MultipartFile`转换为字节数组,然后使用Hibernate的Session来保存到数据库中。这通常涉及以下步骤: 1. 将`MultipartFile`的字节流转换为`byte[]`。...

    使用Jdbc4操作Blob,Clob

    这篇博客“使用Jdbc4操作Blob,Clob”将深入讲解如何利用JDBC4 API来处理Blob和Clob对象。 Blob通常用于存储二进制数据,如图片、音频或视频文件,而Clob则用于存储大量文本数据,如长篇的文本或XML文档。在JDBC4中...

    【IT十八掌徐培成】Java基础第24天-01.Blob字段操作.zip

    这通常涉及到读取本地文件并将其转换为字节数组,然后调用PreparedStatement的setBlob方法。例如: ```java File file = new File("path_to_your_file"); FileInputStream fis = new FileInputStream(file); ...

    解析使用jdbc,hibernate处理clob/blob字段的详解

    - 当在领域模型(Domain)中处理`CLOB`时,通常将其映射为`String`类型,因为`CLOB`主要用来存储大量文本数据。 - `BLOB`则通常映射为`byte[]`,因为它是用来存储二进制数据,如图片或文件。 3. **使用JDBC操作`...

    详解jdbc实现对CLOB和BLOB数据类型的操作

    本文将详细介绍JDBC实现对CLOB和BLOB数据类型的操作,包括读取和写入操作。 CLOB数据类型 CLOB数据类型用于存储大型字符数据,如文本、字符串等。在JDBC中,对CLOB数据类型的操作主要包括读取和写入操作。 读取...

Global site tag (gtag.js) - Google Analytics