java web 怎么将数据库中的二进制流图片还原显示在jsp中 我使用了DAO,Servlet,javabean,怎么将图片显示出来? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 图片base64http://dean.edwards.name/my/base64-ie.html二进制数组转base64http://zlping.iteye.com/blog/400177 解决了,不是用的楼上的方法,原来我是想将图片放到容器中在网页上直接读,但没成功。现我将数据库的流传到jsp上,在网页上转成图片虽然你的方法没有用到,但还是结贴吧 这个可以的,你不妨试试。public String displayImage(){ String sql = "SELECT empHeadImg,empHeadImgName FROM t_personal WHERE id= " + employeeId; PreparedStatement ps = null; ResultSet rs = null; InputStream is = null; OutputStream os = null; try { Class.forName(driverClassName); Connection conn = DriverManager.getConnection(url, username,password); ps = conn.prepareStatement(sql); rs = ps.executeQuery(); if (rs.next()) { Blob blob = rs.getBlob("empHeadImg"); is = blob.getBinaryStream(); HttpServletResponse response = this.getResponse(); response.setContentType("image/jpeg"); os = response.getOutputStream(); int num = (int) blob.length(); byte buf[] = new byte[num]; while ((num = is.read(buf)) != -1) { os.write(buf); } } }catch(Exception e){ e.printStackTrace(); } return null; } jsp<c:if>与EL表达式 路过的帮注解下阿 请教个JSP的简单问题:前台怎么修改数据库? 一个.jsp文件执行完,跳到另一个.jsp页面去,该如何写代码啊? log4j——根据不同的用户生成不同的日志 JSP高手求职 TOMCAT启动时的问题,请高手过来看看. 求助,JSP网页连接ORACLE数据库,出现乱码? HTTP 请求的一个问题 关于java WEB购物车问题,可以帮我解决一下吗?jsp页面收不到集合中的值 急!!求前辈们指导,有个小错误 在ssh2开发中,请问在service层中注入其他service类是否破坏了系统的架构?
http://dean.edwards.name/my/base64-ie.html二进制数组转base64
http://zlping.iteye.com/blog/400177
public String displayImage(){
String sql = "SELECT empHeadImg,empHeadImgName FROM t_personal WHERE id= " + employeeId;
PreparedStatement ps = null;
ResultSet rs = null;
InputStream is = null;
OutputStream os = null;
try {
Class.forName(driverClassName);
Connection conn = DriverManager.getConnection(url, username,password);
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
if (rs.next()) {
Blob blob = rs.getBlob("empHeadImg");
is = blob.getBinaryStream();
HttpServletResponse response = this.getResponse();
response.setContentType("image/jpeg");
os = response.getOutputStream();
int num = (int) blob.length();
byte buf[] = new byte[num];
while ((num = is.read(buf)) != -1) {
os.write(buf);
}
}
}catch(Exception e){
e.printStackTrace();
}
return null;
}