`
jyangzi5
  • 浏览: 212202 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Java读取oracle中blob图片并在页面上显示

阅读更多
背景:有两个平台,A和B,A平台负责图片的上传,B平台负责图片的展示

今天第一次遇到读二进制图片并显示页面的问题,在网上淘了淘,加上自己实际的情况得以实现,现记录在此,以作备忘。
1.项目中业务处理放在ejb中,ejb直接跟数据库打交道。下面为ejb层方法。

//讲图片以二进制形式返回给Action控制层
public byte[] getMenuInfo(String type)
{
//final  byte[] result =new byte[1024];
final List<byte[]> result=new ArrayList<byte[]>();
String sql = "select F_VALUE from  suitpicture where f_type=?";
getJdbcTemplate().query(sql, new Object[] { type},
new RowMapper() {
public Object mapRow(ResultSet rs, int index)throws SQLException
  {
Blob img=rs.getBlob("F_VALUE");
         long size=img.length();
         byte[] bs=img.getBytes(1, (int)size);
         result.add(bs);
         return null;
  }
});
if(result!=null&&result.size()>0)

return result.get(0);
else return null;
}

2.Action 层方法

//获取套餐图片信息
public String getMenuInfo()
{
String type=getRequest().getParameter("type");
try {
    BusinessRemote br = EJBHomeFactory.getInstance().lookupBusinessRemote();
    byte[] bs=br.getMenuInfo(type);
    ServletOutputStream outs=getResponse().getOutputStream();
    outs.write(bs);
    outs.flush();
    return null;

} catch (Exception e)
{
  addErr("获取图片信息发生错误!");
  log.error("获取图片信息发生错误!",e);
}
return null;
}


3.jsp(展示层)
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<img src="getMenuInfo.html?type=XYTC"/>
</body>
</html>
   
分享到:
评论

相关推荐

    java中读取ORACLE中BLOB字段存储的图片

    通过以上步骤,我们成功地实现了在Java程序中读取Oracle数据库BLOB字段中存储的图片,并在前端页面上显示出来。此方法不仅适用于图片,还可以扩展到其他类型的二进制数据,如音频、视频等文件。这对于构建多媒体应用...

    使用JAVA读取ORACLE_BLOB字段实现上传下载.doc

    使用 JAVA 读取 ORACLE BLOB 字段实现上传下载需要完成以下几个步骤:上传大对象、将大对象存储在数据库中、使用专门的函数来完成 BLOB 的使用。在 Struts 项目中,我们可以使用 Struts 的文件上传组件来上传大对象...

    java读取大字段blob类型

    综上所述,Java读取`BLOB`类型的大字段是一项技术性较强的工作,需要开发者具备良好的编程习惯和对数据库操作的深入了解。通过上述步骤和注意事项,可以帮助程序员们更加高效、安全地处理大型`BLOB`数据。

    java对oracle数据库中blob字段的处理

    在Java中,读取Oracle数据库中的BLOB字段通常通过`java.sql.Blob`类实现。这个类提供了多种方法来处理BLOB数据,例如`getBytes(long pos, int length)`用于获取BLOB的一部分或全部内容。以下是一个简单的示例: ```...

    Java读取数据库中blob字段并插入到另一个表中

    可以从数据库中读取blob字段并插入到另一个表中,已经测试通过

    oracle中读取blob字段.doc

    在Java应用程序中读取Oracle数据库中的BLOB字段通常涉及到几个步骤:建立数据库连接、执行查询语句、获取结果集并从中提取BLOB数据,最后将这些数据写入到文件中。 ##### 3.1 加载Oracle驱动 在Java程序中使用...

    基于JSP访问ORACLE数据库BLOB字段并显示图形的解决方案.pdf

    该方案使用JSP技术读取ORACLE数据库中的BLOB字段存储的坐标点,然后将坐标传递到JAVA类中显示图形。在图形的正中还显示了编号,充分展示了JSP结合JAVA应用的优势。 知识点1:JSP技术的应用 * JSP(Java Server ...

    oracle中的BLOB(照片)转换到mysql中

    在Java中,可以使用`ResultSet.getBinaryStream()`方法读取BLOB流,然后将其写入文件: ```java File outputFile = new File("&lt;output_path&gt;"); FileOutputStream out = new FileOutputStream(outputFile); ...

    图片存入Oracle中,用clob和blob两种方式

    在数据库管理中,存储非结构化数据...综上所述,`CLOB`和`BLOB`都是在Oracle中存储图片的有效方法,具体选择哪种方式取决于应用场景和需求。`ClobAndBlob`工具提供了一种便捷的方式来体验和比较这两种方式的使用效果。

    Java从数据库中读取Blob对象图片并显示的方法

    这里我们主要探讨两种Java从数据库中读取Blob对象图片并显示的方法。 **方法一** 这个方法涉及从数据库获取Blob对象的输入流,并将其直接写入HTTP响应的输出流,以便浏览器可以解析并显示图片。以下是实现步骤: ...

    使用hibernate对oracle读取blob

    综上所述,使用Hibernate和JDBC读取Oracle数据库中的Blob数据涉及多个步骤,包括实体类的设计、数据库操作和文件流的处理。理解这些知识点对于处理大对象存储至关重要。在实际项目中,根据需求和性能考虑,选择合适...

    java实现 BLOB图片大文件在oracle中的存储和查找

    本教程将详细讲解如何使用Java来实现BLOB(Binary Large Object)类型的大文件,如图片,在Oracle数据库中的存储和查找,这对于初学者理解和掌握JDBC技术极具价值。 首先,我们需要理解BLOB类型。BLOB是Oracle...

    JAVA+EXTJS+ORACLE在页面显示BLOB类型保存的图片

    - 处理服务器响应,将接收到的字节流转化为图片并显示在页面上,可能使用`data:image/*;base64,`前缀将字节数据转化为Base64编码的图片URL 3. **Oracle数据库**:Oracle是关系型数据库管理系统,BLOB(Binary ...

    批量导出ORACLE数据库BLOB字段生成文件

    通过这种方式,你可以有效地管理和处理存储在Oracle数据库中的大量BLOB数据,使其能够以文件形式在本地系统上访问和使用。 总之,批量导出Oracle数据库中的BLOB字段是一项技术性较强的任务,涉及到数据库连接、SQL...

    oracle_java_blob

    在Java编程中,Oracle数据库是常用的存储系统,尤其在处理大量结构化和非结构化数据时,例如多媒体文件(如MP3)。Oracle数据库支持BLOB(Binary Large Object)类型,用于存储大容量的二进制数据。本篇将详细介绍...

    基于JSP访问ORACLE数据库BLOB字段并显示图形的解决方案

    4. **显示图形**: 在Java中绘制图形,并将其显示在JSP页面上。 #### 实现细节 1. **排样数据表设计**: - 设计了一个名为`GY_PARTS_GROUP_DETAIL`的表,用于存储排样后的坐标数据。 - 表结构包括: - `PART_NUM`...

    java中Blob转String

    分享在JAVA中Blob转换成String实例

    java,Blob字段操作,将图片或者文件保存到数据库中.zip

    在Java编程中,Blob(Binary Large Object)是用于存储大量二进制数据的数据类型,常被用在数据库中保存图片、文件等非文本信息。本教程将深入探讨如何使用Java进行Blob字段的操作,以实现将图片或文件保存到数据库...

    java file upload BLOB

    - 在显示图片时,首先需要从数据库中读取 BLOB 数据。 - 将 BLOB 数据转换为 InputStream,并将其写入到 HTTP 响应的输出流中,以实现图片的显示。 - 为了提高用户体验,可以对图片进行适当的缓存处理。 #### ...

    kettle通过java代码将数据库blob 字段抽取到本地文件

    kettle通过java代码将数据库blob 字段抽取到本地文件

Global site tag (gtag.js) - Google Analytics