java sqlserver text 类型字段读取方法

 更新时间:2012年11月30日 09:26:05   作者:  
有这样一个需求,需要将原本存储在数据库中的文档转存至文件系统中,于是写了一个简单的程序完成此功能
有这样一个需求,需要将原本存储在数据库中的文档转存至文件系统中,于是写了一个简单的程序完成此功能,代码如下:
Java代码
复制代码 代码如下:

import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import org.dbunit.util.Base64;
public class ReadBlob {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(
"jdbc:sqlserver://localhost:1433;DatabaseName=test1", "sa",
"123456");
PreparedStatement ps = conn.prepareStatement("select * from aa");
ResultSet rs = ps.executeQuery();
while(rs.next()){
String fileName = rs.getString("FileName");
String content = rs.getString("Content");
byte[] byte_content = Base64.decode(content);
generateFile(byte_content, "D:\\doc", fileName);
}
conn.close();
}
/**
* 根据byte数组,生成文件
*/
public static void generateFile(byte[] bfile, String filePath,String fileName) {
BufferedOutputStream bos = null;
FileOutputStream fos = null;
File file = null;
try {
File dir = new File(filePath);
if(!dir.exists()&&dir.isDirectory()){
dir.mkdirs();
}
file = new File(filePath+"\\"+fileName);
fos = new FileOutputStream(file);
bos = new BufferedOutputStream(fos);
bos.write(bfile);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (bos != null) {
try {
bos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
if (fos != null) {
try {
fos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}
}

相关文章

  • SpringBoot中配置双数据源的实现示例

    SpringBoot中配置双数据源的实现示例

    在许多应用程序中,可能会遇到需要连接多个数据库的情况,本文主要介绍了SpringBoot中配置双数据源的实现示例,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • springcloud gateway设置context-path的操作

    springcloud gateway设置context-path的操作

    这篇文章主要介绍了springcloud gateway设置context-path的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 十大常见Java String问题_动力节点Java学院整理

    十大常见Java String问题_动力节点Java学院整理

    本文介绍Java中关于String最常见的10个问题,需要的朋友参考下吧
    2017-04-04
  • java的if else语句入门指南(推荐)

    java的if else语句入门指南(推荐)

    下面小编就为大家带来一篇java的if else语句入门指南(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • springMVC实现图形验证码(kaptcha)代码实例

    springMVC实现图形验证码(kaptcha)代码实例

    这篇文章主要介绍了springMVC实现图形验证码(kaptcha)代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
    2019-09-09
  • 四个Java必须知道的负载均衡算法分享

    四个Java必须知道的负载均衡算法分享

    我们在设计系统的时候,为了系统的高扩展性,会创建无状态的系统。但是,要使系统具有更好的可扩展性,除了无状态设计之外,还要考虑采用什么负载均衡算法,本文就带领大家认识以下常见的4种负载均衡算法
    2023-01-01
  • jenkins+Maven从SVN上构建项目的方法

    jenkins+Maven从SVN上构建项目的方法

    这篇文章主要介绍了jenkins+Maven从SVN上构建项目,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • SpringBoot整合MyBatisPlus详解

    SpringBoot整合MyBatisPlus详解

    这篇文章详细介绍了SpringBoot整合mybatisplus的全过程,文中有详细的代码示例,具有一定的参考价值,需要的朋友可以参考一下
    2023-04-04
  • spring为java.util.Properties类型的属性进行赋值过程解析

    spring为java.util.Properties类型的属性进行赋值过程解析

    这篇文章主要介绍了spring为java.util.Properties类型的属性进行赋值过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • Java集合 LinkedList的原理及使用详解

    Java集合 LinkedList的原理及使用详解

    这篇文章主要介绍了Java集合 LinkedList的原理及使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11

最新评论