关于在网页上显示ORACLE数据库里存储的图片的问题,谢谢! http://expert.csdn.net/Expert/topic/876/876147.xml?temp=.9359247 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 To: zxhong(红) : 你好!我按照你的提示抄了如下代码,还是不行,网页执行没有任何显示还望多多指教<%@ page language="java" import="java.sql.*,java.util.*"%><%String image_id ="3";try { Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@192.168.100.1:1521:test"; String user="test"; String password="test"; Connection conn= DriverManager.getConnection(url,user,password); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT blob_column FROM UTL_LOB_TEST WHERE id = " + image_id); if (rs.next()) { String dim_image = rs.getString("filename"); byte [] blocco = rs.getBytes("tfile"); response.setContentType("image/*"); javax.servlet.ServletOutputStream op = response.getOutputStream(); for(int i=0;i<blocco.length;i++) {op.write(blocco[i]);} } //op.close(); rs.close(); stmt.close(); conn.close(); }catch(Exception e) { }%> ResultSet rs = stmt.executeQuery("SELECT blob_column FROM UTL_LOB_TEST WHERE id = " + image_id); if (rs.next()) { String dim_image = rs.getString("filename"); byte [] blocco = rs.getBytes("tfile"); response.setContentType("image/*"); javax.servlet.ServletOutputStream op = response.getOutputStream(); for(int i=0;i<blocco.length;i++) {op.write(blocco[i]);} } 你明明select的是blob_column 结果get的却是filename 怎么可以啊! 我改了一下,还是不行啊,页面上什么也没有!帮帮忙啊!<%@ page language="java" import="java.sql.*,java.util.*"%><%String image_id ="3";try { Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@192.168.100.1:1521:test"; String user="test"; String password="test"; Connection conn= DriverManager.getConnection(url,user,password); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT blob_column FROM UTL_LOB_TEST WHERE id = " + image_id); if (rs.next()) { String dim_image = rs.getString("blob_column"); byte [] blocco = rs.getBytes("UTL_LOB_TEST"); response.setContentType("image/jpeg"); javax.servlet.ServletOutputStream op = response.getOutputStream(); for(int i=0;i<blocco.length;i++) {op.write(blocco[i]);} } //op.close(); rs.close(); stmt.close(); conn.close(); }catch(Exception e) { }%> rs.getBytes("UTL_LOB_TEST");这个没改,取一个,怎能get两个 ResultSet rs = stmt.executeQuery("SELECT blob_column,tfile FROM UTL_LOB_TEST WHERE id = " + image_id); 我改了,还是不行,下面的代码也是从CSDN上COPY来的,试了,也行不通谁能帮我?我要把存储在ORACLE BLOB字段里面的图片显示在网页上,谁帮帮我?!感谢!<%@ page language="java" import="java.sql.*,java.util.*"%><%String sql = "select blob_column from utl_lob_test";Statement stmt = null;ResultSet rs = null;Connection conn = null;try { Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@192.168.100.1:1521:test"; String user="system"; String password="manager"; conn = DriverManager.getConnection(url,user,password); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); } catch (SQLException e) {System.out.println(e);}try { if (rs.next()) { response.setContentType("image/jpg"); ServletOutputStream sout = response.getOutputStream(); byte [] image =rs.getBytes(1); sout.write(image); sout.flush(); sout.close(); } } catch (Exception e) {System.out.println(e); PrintWriter toClient = response.getWriter(); response.setContentType("text/html;charset=gb2312"); toClient.write("ERROR"); toClient.close(); }finally { stmt.close(); conn.close(); }%> <img src="xxx.jsp">xxx.jsp为你的上面显示图片代码的文件名 to:topmint(秋景) 我按照你的方法做了,还是什么也看不到,只是在页面上有一个叉 你说的对,但我现在没时间消化,因为我对JSP显示ORACLE里面的BLOB图片的概念一无所知,只会改改IP,SELECT语句,希望能得到一个完整的真正管用的示例代码,然后才能根据正确的思路慢慢消化。我在ORACLE版回答问题,一般也会把概念讲清楚的,要让别人看得懂,真正能学会。还是非常感谢你! 哦。你的id是什么类型?建议:id='"+id+"'(String) id="+id+"(int,float...) 我的ID 是NUMBER(1)我的SQL语句就直接这样写了String sql = "select blob_column from utl_lob_test where id=3";其中 blob_column是一个BLOB字段,存储了一张JPG图片 如何使用Teamwork License.jar 生成License 一个有关图像的问题 如何在eclipse开发JSP/SERVERLET? eclipse 编译jsp 问题 帮忙分析下以下代码(50分) 请问什么时候使用static的方法()? 我需要LOMBOZ 212 帮我看看这个错误提示,多谢~ 问下关于一条sql语句,请各位帮下忙 谈谈我对java的学习 请教:javabean内简单方法的调用? 如何使用JBuilder编程?
你好!我按照你的提示抄了如下代码,还是不行,网页执行没有任何显示
还望多多指教<%@ page language="java" import="java.sql.*,java.util.*"%>
<%
String image_id ="3";
try
{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@192.168.100.1:1521:test";
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT blob_column FROM UTL_LOB_TEST WHERE id = " + image_id);
if (rs.next())
{
String dim_image = rs.getString("filename");
byte [] blocco = rs.getBytes("tfile");
response.setContentType("image/*");
javax.servlet.ServletOutputStream op = response.getOutputStream();
for(int i=0;i<blocco.length;i++)
{op.write(blocco[i]);}
}
//op.close();
rs.close();
stmt.close();
conn.close();
}catch(Exception e) {
}
%>
if (rs.next())
{
String dim_image = rs.getString("filename");
byte [] blocco = rs.getBytes("tfile");
response.setContentType("image/*");
javax.servlet.ServletOutputStream op = response.getOutputStream();
for(int i=0;i<blocco.length;i++)
{op.write(blocco[i]);}
}
你明明select的是blob_column 结果get的却是filename
怎么可以啊!
<%
String image_id ="3";
try
{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@192.168.100.1:1521:test";
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT blob_column FROM UTL_LOB_TEST WHERE id = " + image_id);
if (rs.next())
{
String dim_image = rs.getString("blob_column");
byte [] blocco = rs.getBytes("UTL_LOB_TEST");
response.setContentType("image/jpeg");
javax.servlet.ServletOutputStream op = response.getOutputStream();
for(int i=0;i<blocco.length;i++)
{op.write(blocco[i]);}
}
//op.close();
rs.close();
stmt.close();
conn.close();
}catch(Exception e) {
}
%>
这个没改,取一个,怎能get两个
ResultSet rs = stmt.executeQuery("SELECT blob_column,tfile FROM UTL_LOB_TEST WHERE id = " + image_id);
谁能帮我?
我要把存储在ORACLE BLOB字段里面的图片显示在网页上,谁帮帮我?!感谢!
<%@ page language="java" import="java.sql.*,java.util.*"%>
<%
String sql = "select blob_column from utl_lob_test";
Statement stmt = null;
ResultSet rs = null;
Connection conn = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@192.168.100.1:1521:test";
String user="system";
String password="manager";
conn = DriverManager.getConnection(url,user,password);
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
} catch (SQLException e)
{System.out.println(e);}
try {
if (rs.next())
{
response.setContentType("image/jpg");
ServletOutputStream sout = response.getOutputStream();
byte [] image =rs.getBytes(1);
sout.write(image);
sout.flush();
sout.close();
}
} catch (Exception e)
{System.out.println(e);
PrintWriter toClient = response.getWriter();
response.setContentType("text/html;charset=gb2312");
toClient.write("ERROR");
toClient.close();
}finally {
stmt.close();
conn.close();
}
%>
xxx.jsp为你的上面显示图片代码的文件名
我按照你的方法做了,还是什么也看不到,只是在页面上有一个叉
的概念一无所知,只会改改IP,SELECT语句,
希望能得到一个完整的真正管用的示例代码,然后才能根据正确的思路慢慢消化。我在ORACLE版回答问题,一般也会把概念讲清楚的,要让别人看得懂,真正能学会。还是非常感谢你!
你的id是什么类型?
建议:id='"+id+"'(String)
id="+id+"(int,float...)
我的SQL语句就直接这样写了
String sql = "select blob_column from utl_lob_test where id=3";
其中 blob_column是一个BLOB字段,存储了一张JPG图片