使用JAVA读取ORACLE BLOB字段实现上传下载

本文详细介绍了如何使用JAVA在ORACLE数据库中处理BLOB字段,包括插入和读取流程。在插入时,通过PreparedStatement插入空BLOB,然后更新;在读取时,使用java.sql.Blob获取输出流。整个过程涵盖了Struts项目中的ActionForm、Action、DAO层操作。
摘要由CSDN通过智能技术生成

主题:使用JAVA读取ORACLE BLOB字段实现上传下载
作者:蔡毅(caiyi0903@hotmail.com
时间:2005-6-22

一 BLOB概述

大对象类型BLOB全称为Binary Large Objects,即二进制大对象。可以把BLOB区别为三种形式:声像数据、二进制数据和大文本数据。因此,最常见的应用就是存储图形、声音等对象,此外大二进制对象、OLE对象也可以通过BLOB类型存入数据库,如果文本对象过大,超出了文本类型的规定长度,则必须用BLOB字段进行存储。我们在经常使用的编程环境中并不能直接支持BLOB字段,因此需要调用相应的函数完成BLOB的使用。


二 实际Struts项目的处理流程

1 插入BLOB字段的流程

表示层:
上传使用struts的<html:file property="drawingFile"/>标签,提交给指定处理的Action,在ActionForm中使用struts自带的FormFile

来保存文件。
核心代码:
<html:form action="/DrawingInputMultiAction" enctype="multipart/form-data">
<html:file property="drawingFile"/>
....省略
</html:form>

控制层:
在Action中将传入的ActionForm中的文件字段赋给VO值对象,并调用业务代理类的上传方法。
核心代码:
        //新增
        if(actionType.equals("insert")) {
            //得到文件类型
            int iFileType = this.getFileType(drawingInputForm.getFileExtendName());
            if(iFileType == 0) {
                //不支持文件类型
                this.addError(request, "drawing.errors.upload.UnSupportedFileType");
            } else {
                DrawingVO objDrawingVO = new DrawingVO();
                //图纸基本属性
                objDrawingVO.setDrawingName(drawingInputForm.getDrawingName());
               ...省略其他set方法

                //执行新增(上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值