`

blob存取图片 clob存取大字符串

阅读更多
Blob 二进制大对象 Clob字符串大对象
public void save(Login login,String loginPath,String description) throws IOException{
		
		InputStream in=this.getClass().getResourceAsStream(loginPath);
		byte[] buff=new byte[in.available()];
		in.read(buff);
		in.close();
		//字节数组转换为Blob对象
		login.setImage(Hibernate.createBlob(buff));
		//转换为clob对象
		login.setDescription(Hibernate.createClob(description));
		session=HibernateUtil.getSessionFactory().getCurrentSession();
		session.beginTransaction();
		session.save(login);
		session.getTransaction().commit();
	}
public void get(int id,String targetPath) throws SQLException, IOException{
		session=HibernateUtil.getSessionFactory().getCurrentSession();
		session.beginTransaction();
		Login login=(Login) session.get(Login.class, id);
		session.getTransaction().commit();
		//读取Clob内容
		Clob description=login.getDescription();
		Reader r=description.getCharacterStream();
		BufferedReader br=new BufferedReader(r);
		String desc=null;
		do {
			desc=br.readLine();
			if(desc==null)
				break;
			System.out.println(desc);
		} while (desc!=null);
		
		
		br.close();
		r.close();
		//Blob getBinaryStream()
		InputStream in=login.getImage().getBinaryStream();
		FileOutputStream out=new FileOutputStream(targetPath);
		byte[] buff=new byte[1024];
		while(in.read(buff)!=-1){
			out.write(buff);
		}
		out.close();
		in.close();
	}
分享到:
评论

相关推荐

    DELPHI的CLOB和BLOB存取处理.zip_DELPHI的CLOB和BLOB存取处理_hallzgz

    CLOB主要用来存储大文本数据,如长篇文章、XML文档或JSON字符串,而BLOB则用于存储大量的二进制数据,如图像、音频、视频文件或者任何非文本的大型数据。在DELPHI中,通常会使用ADO(ActiveX Data Objects)或DBX...

    图片存入Oracle中,用clob和blob两种方式

    - **图片转二进制/字符串**:对图片进行读取,如果是使用`CLOB`,需要将图片转换为Base64字符串;如果是`BLOB`,则直接读取二进制流。 - **插入数据**:通过SQL插入语句,将转换后的图片数据插入到相应的字段中。 ...

    Blob和Clob使用例子

    在处理Clob时,我们可以使用`session.createClob()`方法创建Clob对象,并将其内容设置为字符串: ```java String description = "这是一个很长的用户描述..."; session = sessionFactory.openSession(); ...

    Struts2 Hibernate存取Oracle数据库中的BLOB数据.pdf

    - BLOB(二进制大对象):用于存储大型二进制数据,如影像、图片等,其长度可达4GB,支持随机存取。 - BFILE:虽然用于存储大型二进制数据,但数据实际存储在文件系统中,数据库中仅存储指向文件的指针,Oracle对...

    ORACLE 超长字符串问题的解决办法

    2. **分段操作**:对于非常大的字符串,可以将其分段并逐段追加到CLOB中,以避免一次性加载整个字符串导致的问题。 3. **理解LOB类型**:Oracle提供了BLOB(Binary Large Object)和CLOB,分别用于存储二进制和字符...

    PB9 操作updateblob selectblob 对象

    标题中的"PB9 操作...总之,"PB9 操作updateblob selectblob 对象"是一个关于使用PowerBuilder 9处理数据库中BLOB字段的专题,涵盖了大文本数据或文件内容的存取,以及如何通过封装不可视类来提高代码的可维护性。

    Oracle大文本在ASP中存取问题的解决方法

    5. **ADO调用存储过程**:在VBScript中,首先创建一个Connection对象,设置连接字符串以连接到Oracle数据库。然后,创建Command对象,设置CommandText为存储过程名,并通过Parameters集合添加输入和输出参数。执行...

    Oracle 插入超4000字节的CLOB字段的处理方法

    接着,创建一个OracleParameter对象,将CLOB类型的参数值设置为我们想要插入的长字符串。最后,将参数添加到命令对象中并执行非查询操作(NonQuery)。 ```csharp string connStr = "Data Source=客户端指定连接...

    基于Oracle的地震前兆数据库表结构对比.pdf

    1. 使用API函数Copymemory在内存中实现数据传输,二进制数据的处理通常比字符串数据更快。 2. Blob类型字段占用的空间相对较少,减少了网络传输的时间,提升了效率。 【服务器与客户机】地震前兆数据库的架构通常...

    在Oracle数据库中存取图像的实现.pdf

    假设有一个名为“image”的表,包含两列:“string_field”(字符串列)和“image_field”(BLOB列)用于存储图像数据。通过执行适当的INSERT语句并调用Post方法,可以将图像数据存储到数据库中。 除了图像存储,...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    varchar2 1~4000字节 可变长度字符串,与CHAR类型相比,使用VARCHAR2可以节省磁盘空间,但查询效率没有char类型高 数值类型 Number(m,n) m(1~38) n(-84~127) 可以存储正数、负数、零、定点数和精度为38位的浮点数...

    访问Oracle大对象数据的技术及实现.pdf

    这通常通过数据库连接字符串和认证信息来完成。在COM组件中,可以调用相应的函数来初始化数据库连接。 5. **Pro*C/C++**: - Oracle提供了Pro*C/C++预编译器,允许将SQL和PL/SQL语句嵌入到C或C++代码中。这使得在...

    Oracle知识整理.docx

    - CHAR和VARCHAR2:CHAR为固定长度字符串,VARCHAR2为可变长度字符串。 - NUMBER:可存储整数和浮点数,可以通过(P,S)指定精度和小数位数。 - DATE:存储日期和时间,精确到秒。 - TIMESTAMP:存储日期、时间和...

    在ORACLE数据库中如何对多媒体数据对象进行处理.pdf

    在实际应用中,开发者可以使用DBMS_LOB包中的函数和过程,例如DBMS_LOB.COPY用于复制LOB数据,DBMS_LOB.WRITE用于向LOB中写入数据,DBMS_LOB.GETLENGTH用于获取LOB的长度,DBMS_LOB.INSTR用于查找子字符串在LOB中的...

    基于Oracle的航空物探测量数据存储方案.pdf

    此外,Oracle数据库提供的大数据字段支持,如BLOB和CLOB类型,也可以用于存储航空物探的大规模二进制或文本数据。同时,Oracle的事务处理能力、并发控制和数据完整性机制,确保了在高并发环境下数据的一致性和可靠性...

    Oracle数据库10g:新的SQL和PLSQL功能.pptx

    在LOB(大型对象)增强方面,Oracle10g优化了对BLOB、CLOB等LOB数据类型的处理,提升了读写性能。这包括更快的存取速度和更高效的管理机制,使得LOB数据在大数据应用中的使用更加便捷。 集合类型的增强也是10g的一...

    Oracle企业资产管理.pptx

    - 大对象(LOB)数据类型:包括CLOB、BLOB、BFILE、NCLOB等,用于存储大量文本、二进制数据和外部文件。每个表最多有一个LONG或LONG RAW列,但可有多个LOB列。 3. 数据存储方式: Oracle在创建表时会为其分配表空间...

    ODAC_Pro_10.3.9_d15d24d25d26_Retail.rar

    5. **TOracleBlob** 和 **TOracleClob**:专门用于处理 BLOB 和 CLOB 类型的大对象数据。 6. **Transaction Support**:提供事务管理功能,确保数据的一致性和完整性。 7. **Native Oracle Data Types Support**:...

    Oracle经典教程2——SQL数据库操作和查询

    - **CLOB**:用于存储大文本,如XML文档等。 - **BLOB**:用于存储二进制对象,如图像、视频、音频等。 **NUMBER类型示例**: | 格式 | 输入的数字 | 实际的存储 | |----------|-------------|------------| | ...

Global site tag (gtag.js) - Google Analytics