⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readdocumentdemo.java

📁 java程序设计教程的源码
💻 JAVA
字号:
//【例12-12】  读取BLOB数据并保存到磁盘文件。
//程序清单12-12:  ReadDocumentDemo.java
package blob.document.mssqlserver;

import java.sql.*;
import java.io.*;
import db.connection.DatabaseConnection;

public class ReadDocumentDemo {
	private Connection con = null;

	private Statement st = null;

	private PreparedStatement ps = null;

	private ResultSet rs = null;

	public static void main(String[] args) {
		new ReadDocumentDemo();
	}

	public ReadDocumentDemo() {
		File file = null;
		FileOutputStream fileOutputStream = null;
		// 声明byte数组,保存文档
		byte[] pBytes = null;
		// 创建文档文件的名字数组
		String[] fileNames = { "文件01.doc", "文件02.doc", "文件03.doc", "文件04.doc",
				"文件05.doc" };
		try { // 连接数据库
			con = new DatabaseConnection().getMsSqlServerConnection(
					"DBdocument", "sa", "ok");
			// 创建SQL语句执行类
			st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
					ResultSet.CONCUR_READ_ONLY);
			String query = "select * from tbldocuments";
			// 取得数据集
			rs = st.executeQuery(query);
			for (int i = 0; i < 5; ++i) {
				// 将数据集的游标移到相应的位置
				rs.absolute(i + 1);
				// 获取文件
				file = new File(fileNames[i]);
				// 根据文件创建文档写出类
				fileOutputStream = new FileOutputStream(file);
				pBytes = rs.getBytes(4);
				// 向文件写出文档数据
				fileOutputStream.write(pBytes);
				// 保存文件
				fileOutputStream.close();
				System.out.println("成功创建文档文件:" + fileNames[i] + ", 数据长度 = "
						+ pBytes.length);
			}
		} catch (SQLException e) {
			e.getMessage();
		} catch (IOException e) {
			e.getMessage();
		}
		// 关闭连接
		closeAll(con, st, ps, rs);
	}

	public void closeAll(Connection con, Statement smt, PreparedStatement pstm,
			ResultSet rset) {
		try {
			con.close();
			smt.close();
			pstm.close();
			rset.close();
		} catch (SQLException e) {
			e.getMessage();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -