现在手上的项目,附件都是以二进制的形式直接保存在数据库,今天需要把一个表里面的附件(图片)取出来直接显示到页面上。在网上找到了方法,自己也在此总结一下。
技术:struts1+jsp。
下面是实现。
jsp关键代码:
<img src="recipeAction.do?method=showRecipePic&recipeId=${recipe.recipeId }">
<!-现在才知道img标签可以这样用,惭愧-->
action对应方法:
public void showRecipePic(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String recipeId = request.getParameter("recipeId");
byte[] b = this.recipeService.getRecipeById(Integer.parseInt(recipeId)).getRecipePic();
//以上代码获得数据,下面才是关键
response.setContentType( "image/jpeg ");
response.setContentLength(b.length);
try {
ServletOutputStream ss = response.getOutputStream();
ss.write(b);
ss.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
分享到:
相关推荐
这就是如何在MySQL数据库中存储和查询二进制图片数据,并通过JSP进行显示的基本步骤。在实际应用中,还需要考虑错误处理、安全性(如SQL注入防护)以及性能优化等细节。此外,为了提高用户体验,通常会将图片数据...
标题“图片直接保存到数据库,并在JSP页面显示”涉及的知识点主要集中在Web开发领域,尤其是Java Web开发,包括图片处理、数据库存储以及前端展示。这里我们将深入探讨以下几个关键环节: 1. 图片数据的二进制化:...
本主题将深入探讨如何使用JSP和Servlet来实现一个图片上传功能,并将图片数据存储到Oracle数据库中。 首先,我们需要理解JSP和Servlet的角色。JSP是用于创建动态内容的视图层技术,而Servlet则是Java编写的应用程序...
在这个场景下,我们通常使用Java Server Pages (JSP)作为视图层技术,Servlet作为控制器处理逻辑,而MySQL作为关系型数据库来存储数据,包括图片的二进制数据。下面将详细介绍这个过程。 1. **JSP(Java Server ...
在“struts1上传图片,保存数据库,再显示jsp页面”这个场景中,我们将探讨如何利用Struts1实现文件上传,将图片数据保存到数据库,并在JSP页面上展示。 1. **Struts1的文件上传组件**: Struts1并不直接支持文件...
在本文中,我们将深入探讨如何使用JSP与jspsmartupload控件将图片上传到数据库。jspsmartupload是一款强大的JSP文件上传组件,能够帮助开发者处理用户通过表单提交的多个文件。以下是对这个技术栈的详细解析: 1. *...
【JSP实现将图片上传到数据库】的知识点涵盖了图片上传的基本原理、文件上传组件的使用、JSP中处理图片数据的流程以及服务器端文件的存储形式。以下是详细说明: 1. **图片上传原理**: 图片上传是客户端通过Web...
然后,从请求中获取用户的输入信息,并将文件数据转换为二进制流,最终通过PreparedStatement执行SQL插入操作,将图片数据存储到数据库的`ImageData`字段中。 #### 五、总结 通过以上步骤,我们可以实现一个完整的...
这个页面通常用于展示已上传的文件,尤其是图片等可以直接在浏览器中显示的二进制数据。在JSP中,可以通过`<img>`标签来显示图片,其`src`属性指向文件的URL。如果文件存储在服务器的某个路径下,那么URL通常是相...
这种方式可以确保数据的完整性,因为图片直接存储在数据库中,不会因文件系统的变化而丢失链接。 首先,我们需要理解JSP和Servlet。JSP是Java的一种视图技术,它允许开发者在HTML页面中嵌入Java代码,使得动态内容...
4. **将图片保存到数据库**:对于图片的存储,常见的做法是将其转换为二进制数据,然后存储到数据库的BLOB(Binary Large Object)字段。Java提供了`java.sql.Connection`、`PreparedStatement`等接口来执行SQL语句...
本教程将深入探讨如何在Java环境下,批量地从MySQL数据库中下载存储在Blob字段中的图片,并将其保存到本地文件系统。 首先,我们需要理解Blob类型。Blob是MySQL中的一个数据类型,用于存储大量二进制数据。它分为四...
easy记事本(网页版记事本),支持mysql数据插入和查询,快速查找。...使用tomcat部署,方便快捷。...新增二进制内容存储与显示,比如存储内容为网页,显示出来依然是网页形式,优化二进制内容网页显示。
在Oracle数据库中,可以使用SQL语句创建一个名为`test_img`的表,包含三个字段:`id`用于唯一标识图片,`name`存储图片名称,`pic`则用来存储图片的二进制数据。创建表的SQL语句如下: ```sql CREATE TABLE test_...
首先,我们要明白图片通常以二进制数据(byte array)的形式存储在数据库中。在给出的实体类`UserInfo`中,有一个`byte[] image`字段,用于存储用户信息中的图片数据。在Hibernate映射文件`UserInfo.hbm.xml`中,`...
接下来,我们需要实现`saveImageToDatabase()`方法,这通常涉及将图片文件的内容转换为二进制数据,然后存储到数据库的BLOB字段。可以使用JDBC或ORM框架(如Hibernate)来实现这一过程。 ```java public void ...
图片的二进制数据可能直接存储在BLOB类型字段,或者存储在服务器文件系统,并仅存储路径在数据库中。 8. **图片显示**: 图片上传后,用户可能需要查询并显示已上传的图片。这可以通过Servlet或JSP实现,从数据库...
该页面首先从数据库中查询到图片数据,然后将其转换为字节数组,并通过`ServletOutputStream`输出到浏览器,实现图片的展示。 最后,文件中的内容虽然包含了一些OCR扫描错误和漏识别的字符,但大体上描述了一个完整...
在IT行业中,jQuery、Oracle Blob、JSP以及图片处理是常见的技术领域,这些技术常常结合在一起用于构建功能丰富的Web应用程序,特别是涉及到图像上传和显示的场景。以下是对这些知识点的详细说明: 首先,jQuery是...
首先,"图片写到数据库"指的是将图片转换为二进制数据,然后存储到数据库中。在传统的Web应用中,通常会选择关系型数据库如MySQL或Oracle来存储这种类型的数据。图片的二进制内容可以作为BLOB(Binary Large Object...