`

hibernate中操作Mysql的BLOB数据

阅读更多
package hibernate;

import java.sql.Blob;

public class Blobtest  implements java.io.Serializable {

     
private long id;
     
private Blob image;

    
public Blobtest() {
    }


    
public Blobtest(Blob image) {
        
this.image = image;
    }


    
public long getId() {
        
return this.id;
    }

    
    
public void setId(long id) {
        
this.id = id;
    }


    
public Blob getImage() {
        
return this.image;
    }

    
    
public void setImage(Blob image) {
        
this.image = image;
    }

}
 测试写入数据:
package hibernate;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

import org.hibernate.Hibernate;
import org.hibernate.Session;
import org.hibernate.Transaction;

public class Test {
    
public static void main(String[] args) throws IOException {
        InputStream in 
= new FileInputStream("F:/lzx.jpg");        
        
byte[] b = new byte[in.available()];
        in.read(b);
        in.close();
        Blobtest blobTest
=new Blobtest();

        blobTest.setImage(Hibernate.createBlob(b));
        Session session
=HibernateUtil.currentSession();
        Transaction tx
=session.beginTransaction(); 
        session.save(blobTest); 
        tx.commit(); 
        System.out.print(
"success"); 
        HibernateUtil.closeSession();
    }

}

读出数据:
package hibernate;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.sql.SQLException;

import org.hibernate.Session;
import org.hibernate.Transaction;

public class TestWrite {
    
public static void main(String[] args) throws IOException, SQLException {
        Session session
=HibernateUtil.currentSession();
        Transaction tx
=session.beginTransaction();
        Blobtest blobTest 
= new Blobtest();
        blobTest 
= (Blobtest) session.get(Blobtest.classnew Long(1));
        System.out.println(
"qu chu shu ju");
        OutputStream out 
= new FileOutputStream("F:/111.jpg");
        out.write(blobTest.getImage().getBytes(
1,(int) blobTest.getImage().length()));
        out.flush();
        out.close();
        HibernateUtil.closeSession();
    }

}

分享到:
评论

相关推荐

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

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

    hibernate struts处理mysql数据库blob字段实例

    本实例主要探讨如何利用Hibernate和Struts框架来处理MySQL数据库中的BLOB字段,实现文件的上传与下载功能。 **一、Hibernate框架** Hibernate是一个强大的Java持久化框架,它简化了数据库操作,提供了对象关系映射...

    hibernate保存blob,clob对象

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

    使用Hibernaet存储MYSQL表中BLOB字段的问题

    总结一下,处理Hibernate与MySQL BLOB字段的关键在于理解BLOB的特性和挑战,采用适当的数据处理策略,如流式操作、内存管理、事务控制以及数据库版本兼容性考虑。在实践中不断优化,可以提高代码的稳定性和性能。

    oracle+hibernate 处理blob +uploadify实例

    综上所述,这个实例展示了如何在Oracle数据库中使用Hibernate处理Blob数据,结合Uploadify实现文件上传。这种解决方案不仅适用于Oracle,理论上也适用于其他支持Blob类型的数据库,如MySQL和MSSQLServer。了解这些...

    Hibernate中数据类型

    总的来说,理解 Hibernate 中的数据类型映射是进行数据库操作的关键,它有助于确保数据在 Java 应用程序和数据库之间的准确传输,并确保程序的稳定性和兼容性。正确选择和配置这些类型可以避免许多潜在的问题,如...

    Hibernate-Oracle-MySQL-image.rar_oracle

    接下来,我们将深入探讨在Hibernate中操作Oracle和MySQL数据库中的Blob字段: 1. **配置Hibernate**:在项目中集成Hibernate,你需要创建一个`hibernate.cfg.xml`配置文件,配置数据库连接信息,包括数据库URL、...

    Java数据类型,Hibernate数据类型,标准sql数据类型之间的对应表

    MySQL是世界上最流行的关系数据库管理系统之一,它的数据类型包括数字类型(如INT、DECIMAL)、字符串类型(如VARCHAR、TEXT)、日期和时间类型(如DATE、DATETIME)以及二进制类型(如BLOB)等。 例如,Hibernate...

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

    在Java的数据库操作中,`CLOB`和`BLOB`是用于存储大对象(Large Object)的数据类型,分别用于存储字符数据和二进制数据。这篇文章主要讲解了如何使用`JDBC`和`Hibernate`这两种不同的方式来处理`CLOB`和`BLOB`字段...

    Java+MySql图片数据保存与读取的具体实例

    - **ORM框架**:Hibernate等ORM框架能够将数据库操作对象化,处理Blob数据更加方便。 5. **image.rar文件** 这个rar文件可能包含了演示代码、示例图片或者其他相关资源,解压后可以参考和学习如何在实际项目中...

    Hibernate和java中的对应数据类型

    在Java编程语言中,我们使用一系列内置的数据类型来表示各种数据。...此外,Hibernate还支持其他高级特性,如类型别名、级联操作、懒加载等,这些特性使得在Java应用中处理数据库变得更加方便和灵活。

    hibernate Blob、Clob字段的映射的例子

    hibernate Blob、Clob字段的映射的例子.数据库mysql,数据库放在文件夹里面,例子的说明文章在我的csdn blog: http://blog.csdn.net/zhengcandan

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

    Blob字段操作是数据库编程中的一个重要环节,尤其是在处理大量非结构化数据时。本教程将围绕Java如何与Blob字段进行交互展开,包括插入、查询、更新和删除Blob数据。 首先,理解Blob数据类型。Blob是Java.sql包中的...

    使用Struts2上传图片存取到Mysql中并读取出来显示在页面上_好资源0分送

    1. **图片上传与存储**:了解如何通过Struts2上传图片,并将其以Blob形式存储在MySQL数据库中。 2. **图片读取与展示**:掌握如何从数据库中读取图片Blob数据,并将其显示在Web页面上。 #### 开发准备 1. **开发...

    java中(注解符)处理Clob(blob)类型

    Java 中处理 Clob 和 Blob 类型的注解配置是一种常见的处理大规模数据的方法。Clob(Character Large OBject)类型和 Blob(Binary Large OBject)类型是数据库中两种常用的大规模数据类型。Clob 类型用于存储大规模...

    Struts+Hibernate简化J2EE的文件操作

    《Struts+Hibernate简化J2EE的文件操作》这篇文章主要探讨了如何在Java Web开发中,利用Struts和Hibernate框架高效地处理文件上传和管理,特别是通过BLOB类型存储文件在数据库中的方法。以下是对文章内容的详细解读...

    使用Jdbc4操作Blob,Clob

    在提供的`Hibernate4_Spring3_Blob_Test`压缩包中,可能包含了使用Hibernate4和Spring3来测试Blob操作的例子。Spring可以帮助管理数据库连接和事务,而Hibernate则提供了方便的对象关系映射,使得处理LOB如同操作...

    Hibernate操作数据库大字段的示例(附源码及详细开发使用方法)。

    本示例将详细介绍如何在Hibernate中操作数据库的大字段。 首先,我们来理解“大字段”在数据库中的概念。在SQL标准中,BLOB(Binary Large Object)和CLOB(Character Large Object)用于存储大量的二进制数据和...

    java将图片写入数据库,并读出来(blob clob)

    这个过程通常涉及到Blob和Clob数据类型,它们是Java中的两种特殊对象,用于存储大对象(LOB)。Blob用于存储二进制数据,如图片、音频或视频文件,而Clob则用于存储字符数据,比如长文本。以下是如何使用Java处理...

Global site tag (gtag.js) - Google Analytics