public static void printpic(){
String sql="select id,name,photo from xuan_student ";
try {
Connection conn=ConnectionUtils.openConnection();
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
if(rs.next()){
FileOutputStream fos=new FileOutputStream(new File("asd.jpg"));
InputStream ins=rs.getBinaryStream("photo");
byte[] buffer=new byte[4*1024];
int length=0;
while((length=ins.read(buffer))!=-1){
fos.write(buffer,0,length);
}
}
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
分享到:
相关推荐
它支持多种数据类型,包括BFILE和BLOB,后者常用于存储大对象,如图片、文档或视频,这在文件上传场景中非常关键。 文件上传通常涉及以下几个步骤: 1. **用户界面**:首先,你需要创建一个用户界面,允许用户选择...
5. 从`Blob`对象中读取字节数组,创建一个`InputStream`,然后可以将其写入文件系统,完成图片的恢复。 在实际开发中,为了提高性能和减少内存消耗,我们通常会分批读取BLOB数据,而不是一次性加载整个图片。此外,...
6. **读取图片**:使用类似的方法,创建一个查询SQL(如`SELECT image_column FROM table_name WHERE ...`),执行后获取ResultSet。从ResultSet中取出BLOB对象,然后写入到OutputStream,可以是文件流或者内存流,...
- 使用`BufferedInputStream`和`BufferedOutputStream`分别从文件中读取数据并写入到输出流中。 - 关闭输出流、输入流以及释放其他资源。 - 提交事务,并恢复`Connection`的自动提交状态。 #### 四、更新BLOB...
你可以在项目的类路径中添加这个jar包,通常将其放在/META-INF/MANIFEST.MF文件中指定的类路径下。 接着,创建一个包含BLOB字段的表。例如,创建一个名为`blobmodel`的表,其中包含一个主键`blobid`和一个BLOB类型...
在本项目中,开发者使用JDBC驱动与后端数据库建立连接,执行SQL语句,并获取查询结果。这包括创建数据库连接、预编译SQL语句、执行查询和更新操作,以及关闭连接。 **文件上传** 网络订餐系统可能包含菜品图片或...
前端(HTML/JavaScript)向服务器发送请求,获取图片数据。可以使用AJAX或者Fetch API来实现。在Java后端,创建一个处理请求的Controller方法,查询数据库并将图片数据返回给前端。 4. **在HTML中显示图片**: ...
然而,如何有效地从数据库中读取这些二进制数据,并将其转换为可用的格式,如图像文件,则是一个常见的技术问题。本文将详细介绍如何使用Java语言读取SQL Server中的`IMAGE`字段,并将其转换为图片文件。 #### 二、...
1. **文件系统的读取**:如果你的图像文件存储在服务器的文件系统中,你可以使用Java的`java.io`包中的类来读取。例如,使用`FileInputStream`打开文件,然后使用`ImageIO`类的`read()`方法将输入流转换为`...
当处理图像文件时,如JPEG或PNG,元数据可能包含EXIF(Exchangeable Image File Format)信息。Java的`javax.imageio.ImageIO`类提供读取和写入图像元数据的功能。通过`ImageReader`和`ImageWriter`接口,可以访问...
Blob(Binary Large Object)主要用于存储二进制大对象,如图像、音频文件等;而Clob(Character Large Object)则用于存储大量的文本数据,如文章、文档等。正确地理解和使用这两种类型对于开发能够高效处理大量数据的...
读取时,`getBlob()`方法返回一个Blob对象,可以使用该对象的`getBytes()`方法获取数据,并写入到文件中。 总的来说,这个主题涵盖了以下几个关键知识点: 1. Oracle数据库中的LONG RAW和BLOB类型用于存储非结构化...
检索图片时,使用`ResultSet`的`getBlob()`方法获取`InputStream`,然后写入文件: ```java ResultSet rs = stmt.executeQuery("SELECT image FROM images WHERE id = 1"); if (rs.next()) { Blob blob = rs....
5. **图片的检索与显示**:在需要显示图片的地方,从数据库中查询出对应的记录,获取BLOB字段的数据。使用InputStream从BLOB中读取字节流,然后可以通过Response的输出流将这些字节写入HTTP响应,设置正确的Content-...
综上所述,这个例子不仅展示了JDBC基础的数据库连接过程,还涉及了配置文件的使用以及大文本和图片数据的处理,是学习JDBC与MySQL交互的一个实用教程。对于初学者来说,理解并实践这个例子有助于提升数据库操作的...
在IT行业中,定时任务是常见的自动化操作,而本项目的核心在于定时读取PDF文件并将其内容批量插入到数据库。这个任务涉及到多个技术点,包括线程管理、PDF处理、数据库操作以及工具类的设计。以下是对这些知识点的...
**图像文件image001.jpg**:可能是一个示例图,演示了JDBC连接过程或者数据库管理工具的界面,有助于直观理解操作步骤。 总结,通过JDBC与达梦数据库的配合,开发者可以在Java应用程序中实现对数据库的高效访问和...
在Oracle数据库中,Blob类型用于存储大量的二进制数据,如图片、音频文件或文档等。在处理大量Blob数据时,传统的单条插入方式可能会导致性能低下,因为每条SQL语句都需要与数据库进行交互,这会增加网络传输和...
以上就是Java中Blob字段操作的基本流程,通过这些步骤,你可以成功地将图片或文件保存到数据库中,并能从数据库中读取和恢复这些数据。在实际开发中,根据具体需求,可能还需要处理异常、事务管理和资源关闭等问题,...
在提供的压缩包文件中,"JDBC连接SQL2000详细流程.htm"和"JDBC连接SQL2000详细流程.txt"可能是详细教程或示例代码,而"JDBC连接SQL2000详细流程_files"可能包含相关图片或其他辅助资源,这些内容可以帮助你更直观地...