`
chen_zhongjian
  • 浏览: 49851 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

实现图片转换成二进制存入数据库的简单方法

 
阅读更多
public boolean insertDataImage(HttpServletRequest request,
PageContext pageContext) throws Exception {

String Bno = request.getParameter("Bno");
log.debug("Bno=" + Bno);

if (Bno == null || Bno.length() == 0) {
throw new AppException("错误提示:请选择要操作的编号!");
}
String sql0 = "update XXXX set XXXX=?  where  XXXX='" + Bno + "'";

SmartUpload mySmartUpload = null;
byte[] b1 = null;
try {
/**
* 文件上传 目前只能取JPG
*/
mySmartUpload = new SmartUpload();
mySmartUpload.initialize(pageContext);// 初始化
mySmartUpload.setMaxFileSize(ConfigServices.getUpLoadFileMaxSize());// 设置上传文件的最大长度byte
mySmartUpload.upload();// 上传
mySmartUpload.setAllowedFilesList("jpg,jpeg");

for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++) {
// 循环取得文件上传表单中的文件
log.debug(mySmartUpload.getFiles().getFile(i).getFileName());
com.jspsmart.upload.File myFile = mySmartUpload.getFiles()
.getFile(i);
String path = myFile.getFilePathName();

b1 = new byte[myFile.getSize()];
for (int j = 0; j < myFile.getSize(); j++) {
b1[j] = myFile.getBinaryData(j);
}
}

/**
* 写入输出流
*/
Object resObj = null;
if (b1 != null) {
final int contentLength = b1.length;
final InputStream fin = new ByteArrayInputStream(b1);
resObj = DaoTemplateFactory.getJdbcTemplate().execute(
sql0,
new AbstractLobCreatingPreparedStatementCallback(
SpringLobHandlerGetter.get()) {
protected void setValues(PreparedStatement ps,
LobCreator lobCreator) throws SQLException,
DataAccessException {
lobCreator.setBlobAsBinaryStream(ps, 1, fin,
contentLength);
}

});
if (fin != null) {
fin.close();
}
}
if (resObj != null) {
int count = ((Integer) resObj).intValue();
if (count > 0) {
return true;
} else {
return false;
}
} else {
return false;
}
} catch (Exception e) {
throw new AppException("错误提示:上传文件格式不正确或太大,请重新上传!");
}


}
分享到:
评论

相关推荐

    图片的上传、缩放、转换为二进制流、以动态页面显示

    实现了对上传的图片进行缩放显示,并将图片转换为二进制流(将其保存到数据库中,及实现了将图片存储到数据库中),之后通过动态页面显示生产的图片,避免了上传图片显示的路径问题

    C#图片转换成二进制流并且保存到sql server数据库.pdf

    "C#图片转换成二进制流并保存到SQL Server数据库" 本文将详细讲解如何使用C#将图片转换成二进制流并保存到SQL Server数据库。以下是相关知识点的总结: 一、图片转换成二进制流 在C#中,可以使用FileStream类来...

    如何将图片转换成二进制存储

    ### 如何将图片转换成二进制存储 在IT领域,特别是Web开发中,经常会遇到需要将图片存储到数据库的情况。通常来说,图片文件较大,不适合直接存储在数据库中,但有时为了方便检索或者实现某些特定功能(如在线查看...

    将图片存放进数据库(转换成二进制流)

    "将图片存放进数据库(转换成二进制流)"这个主题,就是关于如何将图像文件以二进制形式存储到数据库中,然后从数据库中读取并以流的形式展示出来。下面我们将深入探讨这一技术。 首先,我们需要理解什么是二进制流...

    将图片转化为二进制流存入SQL

    将图片转换为二进制流意味着将图片文件中的每一个字节(8位)读取出来,并按照顺序排列。 2. **SQL Server**: 一个由微软公司开发的关系型数据库管理系统,支持多种数据类型,包括用于存储二进制数据的`Image`类型。...

    图片以二进制存取数据库

    下面将详细阐述如何实现图片以二进制形式存入数据库,并从数据库取出显示,以及相关的技术要点。 首先,我们要理解BLOB类型。在关系型数据库如MySQL、PostgreSQL、Oracle和SQL Server中,BLOB是一个特殊的数据类型...

    C#图片转换成二进制流并且保存到sql_server数据库

    通过以上步骤,你可以成功地在C#中实现将图片转换为二进制流并保存到SQL Server数据库,以及从数据库中检索和恢复图片。这个过程涉及到文件I/O、数据库连接、参数化查询、二进制数据处理等多个核心概念,对于开发...

    图片二进制存入数据&从数据库中读取图片显示

    根据给定文件中的标题、描述、标签以及部分...以上就是从标题、描述、标签以及部分内容中提取出的关键知识点,涵盖了图片转换为二进制数据、存储到数据库、从数据库读取以及在ASP.NET中动态加载的基本概念和技术细节。

    富文本编辑器上传到本地可以转二进制存数据库.rar

    3. **二进制存储**:图片不再以URL形式存储,而是转换成二进制数据存入数据库。这种方式便于数据的一体化管理,尤其适合于那些对数据完整性和隐私保护有高要求的应用场景。 将图片转换为二进制数据存储在数据库中,...

    C#+Mysql将图片批量转为2进制并存入数据库中

    在IT行业中,数据库存储通常需要将非结构化数据如图片转换为可存储的格式,而二进制数据正是实现这一目标的有效方式。本项目“C#+Mysql将图片批量转为2进制并存入数据库中”就是这样一个解决方案,它利用C#编程语言...

    C#中word文档、图片以二进流存数据库和从数据库读出并打开

    本篇文章将详细探讨如何在C#中将Word文档和图片以二进制流的形式存储到数据库,并从数据库中读取后进行显示。 首先,我们要理解什么是二进制流。二进制流(Binary Stream)是数据的一种表示方式,它将文件内容转换...

    将文件上传、下载(以二进制流保存到数据库)实现代码

    2. 文件下载:当用户需要下载文件时,后端从数据库中读取对应文件的二进制流,然后将其转换成文件格式,并通过Web服务器发送给用户。用户的浏览器或下载工具接收到数据后,可以将其保存到本地或直接打开。 具体到...

    通过二进制数据流的方式,读写图片,把图片存入数据库

    # 将图片转换为二进制数据流 binary_data = img.tobytes() ``` 三、写入图片 写入图片的过程与读取相反,首先将图片数据转换成二进制流,然后写入到文件中。在Python中,可以这样操作: ```python # 假设binary...

    Delphi将图片以二进制方式存储在数据库BLOB字段中.rar

    通过将图片转换为二进制数据并存储在数据库中,可以实现数据的高效管理,同时保持程序的稳定性和性能。这个过程中的关键是理解如何使用TStream对象以及如何在数据库组件中正确处理BLOB字段。通过深入学习和实践,...

    Asp.net把图片存入数据库和读取图片的方法

    将图片转换为二进制数组(byte[]) 代码如下:byte[] fileData = this.FileUpload1.FileBytes; 2. 根据路径将文件转换为2进制数组 代码如下:代码 public byte[] returnbyte(string strpath){ // 以二进制方式读文件...

    C# ##从数据库中取二进制图片文件存入硬盘.rar

    这个场景中,"C# 从数据库中取二进制图片文件存入硬盘"的主题涉及到如何使用C#编程语言从数据库中检索这些二进制数据,并将它们写入到本地硬盘作为图片文件。下面我们将详细探讨这一过程涉及的关键知识点。 首先,...

    C#二进制图片的存储或读取

    通过`MemoryStream`对象和ADO.NET,我们可以方便地将图片转换为二进制流,存入SQL Server数据库,再从数据库中读取出来还原为图片。这种方法广泛应用于各种需要存储图像数据的应用中,如Web应用程序、桌面应用等。

    如何把图片以二进制方式存入SQL_Server数据库_并能读取出来

    ### 如何将图片以二进制方式存入SQL Server数据库并读取出来 在实际的应用开发过程中,我们经常需要处理图像文件,例如用户头像、产品图片等。这些图像文件通常体积较大,不适合直接存储为文件系统中的独立文件,...

    C#把图片转换成数据流存入数据库中再读出来变成图片

    步骤2:存入数据库 存储图片数据流到SQL Server数据库,我们通常使用`varbinary(max)`或`image`类型字段。这里我们假设有一个名为`Images`的表,包含一个名为`ImageData`的列。使用`System.Data.SqlClient....

Global site tag (gtag.js) - Google Analytics