oracle 数据库存放读取二进制文件(将上传的文件流存在数据库)

private void saveBinary(InputStream in, Long userId, String fieldName) {
        Sql sql = new Sql("insert into EEAS_USER_ATTH(id,CONTENT,USER_ID,ATTH_NAME) values(SEQ_EEAS_USER_ATTH.NEXTVAL,?,?,?)");
        sql.addParameter(new Parameter(DataType.BLOB, in));
        sql.addParameter(new Parameter(DataType.LONG, userId));
        sql.addParameter(new Parameter(DataType.STRING, fieldName));
        service.execute(sql);
    } 

 public InputStream getBinary(String sql) {
        InputStream fis = null;
        Connection conn = null;
        PreparedStatement pstmt = null;
        try {
            conn = ContextUtil.getConnection();
            // --
            pstmt = conn.prepareStatement(sql);
            ResultSet rs = pstmt.executeQuery();
            if (rs.next()) {
                fis = rs.getBinaryStream(1);
            }
            rs.close();
            // --
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (pstmt != null) {
                try {
                    pstmt.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
        return fis;
    }
时间: 2024-10-10 11:25:40

oracle 数据库存放读取二进制文件(将上传的文件流存在数据库)的相关文章

SAE上传web应用(包括使用数据库)教程详解及问题解惑

转自:http://blog.csdn.net/baiyuliang2013/article/details/24725995 SAE上传web应用(包括使用数据库)教程详解及问题解惑:       最近由于工作需求,需利用SAE平台,但在使用过程中遇到不少问题,比如如何上传应用,上传应用完毕后打不开,mysql连接不上等等,以及云豆的计费问题,结合个人使用心得,将在本帖一一解答.       1,上传web应用首先,使用SAE平台需要注册自己的账号吧,这个就不说了,然后进入我的首页,会看到: 

文件的上传:二进制文件的上传;

***二进制文件上传的方法:<form action="uploadServlet" method="post" enctype="multipart/form-data"> ***在lib目录下:导入文件上传的开源架包:commons-fileupload-1.2.1.jar,commons-io-2.0.jar: 建立Servlet类:UploadServlet,实现文件上传的方法: package com.lanqiao.jav

WebService中实现上传下载文件

不多说,直接看代码: /*上传文件的WebService*/ using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Web; using System.Web.Services; using System.IO; /// <summ

JSP上传一个文件夹

javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 <form id="postForm" action="${pageContext.request.contextPath}/UploadServlet" method="post" enctype="multipart/form-data"> <

ASP.NET上传一个文件夹

之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需求,都能得到满足.小小开心了一把. 但无论插件再怎么灵活,也难以应付所有的需求,比如,你要上传一个2G的文件.以现在我们的网速,恐怕再快也得传半小时.要命的是,如果你在上传到90%的时候不小心关掉了浏览器,或者是手一抖摁了F5,完了,一切还得从头再来.这种用户体验简直太糟糕了.所以,断点续传就十分有

netty4 实现一个断点上传大文件功能

我本来以为文件断点续传功能很简单,不就是提供2个方法: 一个返回已经上传的文件的长度:另外一个负责上传文件呗(请求带上content-range 指明本次上传的内容在整个文件中的位置),然后根据请求提供的位置写呗,太简单了. 但是实际情况还是比较复杂的,关键问题是,上面的描述现在想想只能称作为文件分段上传,而不是断点续传. 断点意味着网络会断,然后断了之后,服务端根本获取不到本次上传的内容,于是下次又只能从头开始传文件.一种解决办法是客户端将文件分成很小的片段(单个片段丢了就整个片段重传),这个

java web图片上传和文件上传

图片上传和文件上传本质上是一样的,图片本身也是文件.文件上传就是将图片上传到服务器,方式虽然有很多,但底层的实现都是文件的读写操作. 注意事项 1.form表单一定要写属性enctype="multipart/form-data" 2.为了能保证文件能上传成功file控件的name属性值要和你提交的控制层变量名一致, 例如空间名是file那么你要在后台这样定义 private File file; //file控件名 private String fileContentType;//图

上传大文件&amp;验证码

c#如何上传大文件? 想要想上传大文件,必须在web.config文件中进行配置. 在<system.web>节点中添加如下代码即可: <httpRuntime maxRequestLength="2097151"/> 这个代码就是表示设置最大请求值,上传文件也就相当于请求.maxRequestLength单位为KB,最大值为:209715 如果不设置,默认为4096 KB (4 MB). 也就是说上传的文件最大可以上传2G以内的文件. 一般没有配置的话,默认只

VB中上传下载文件到SQL数据库

VB中上传下载文件到SQL数据库 编写人:左丘文 2015-4-11 近期在修改一个VB编写的系统时,想给画面增加一个上传文件到数据库,并可以下载查看的功能,今天在这里,我想与大家一起分享代码,在此做个小结,以供参考.有兴趣的同学,可以一同探讨与学习一下,否则就略过吧.   1. 首先要保存文件到数据库,我们需要使用流对象保存,所以第一时间先在数据库中增加 一个image的字段(注意:Access中的photo字段类型为OLE对象.SqlServer中的photo字段类型为Image),用于存储