用JSP从数据库中读取图片并显示在网页上
<1>先在mysql下建立如下的table. 并insert图像.
mysql.sql文件如下:
- CREATE TABLE photo (
- photo_no int(6) unsigned NOT NULL auto_increment,
- image blob,
- PRIMARY KEY (`photo_no`)
- )
<2>把show.jsp放在tomcat的任意目录下. show.jsp作用:从数据库中读出blob,并产生image/jpg.
show.jsp文件如下:
- <%@ page contentType="text/html; charset=gbk" %>
- <%@ page import="java.io.*"%>
- <%@ page import="java.sql.*, javax.sql.*" %>
- <%@ page import="java.util.*"%>
- <%@ page import="java.math.*"%>
- <%
- String photo_no = request.getParameter("photo_no");
- //mysql连接
- Class.forName("com.mysql.jdbc.Driver").newInstance();
- String URL="jdbc:mysql://localhost:3306/job?user=root&password=111111";
- Connection con = DriverManager.getConnection(URL);
- //oracle连接
- //String URL="jdbc:oracle:thin@localhost:1521:orcl2";
- //user="system";
- //password="manager";
- //Connection con = DriverManager.getConnection(URL,user,password);
- try{
- // 准备语句执行对象
- Statement stmt = con.createStatement();
- String sql = " SELECT * FROM PHOTO WHERE photo_no = "+ photo_no;
- ResultSet rs = stmt.executeQuery(sql);
- if (rs.next()) {
- Blob b = rs.getBlob("photo_image");
- long size = b.length();
- //out.print(size);
- byte[] bs = b.getBytes(1, (int)size);
- response.setContentType("image/jpeg");
- OutputStream outs = response.getOutputStream();
- outs.write(bs);
- outs.flush();
- rs.close();
- }
- else {
- rs.close();
- response.sendRedirect("./images/error.gif");
- }
- }
- finally{
- con.close();
- }
- %>
<3>把如下文件放在show.jsp的同一目录下.
index.html文件如下:
- <html>
- <head>
- <title> 图像测试 </title>
- </head>
- <body>
- <table>
- <tr>
- <td>
- 图像测试
- </td>
- </tr>
- <tr>
- <td>
- <img src="show.jsp?photo_no=2">
- </td>
- </tr>
- </table>
- </body>
- </html>
用JSP从数据库中读取图片并显示在网页上的更多相关文章
- [转]asp.net mvc 从数据库中读取图片
本文转自:http://www.cnblogs.com/mayt/archive/2010/05/20/1740358.html 首先是创建一个类,继承于ActionResult,记住要引用Syste ...
- asp.net mvc 从数据库中读取图片的实现代码
首先是创建一个类,继承于ActionResult,记住要引用System.Web.Mvc命名空间,如下: public class ImageResult : ActionResult { publi ...
- [转] 从数据库中读取图片并导入Excel文件,C#方式
原文地址, 作者 Lvyou1980 直接源码吧. using System; using System.IO; using System.Data; using System.Drawing; us ...
- 从npz文件中读取图片并显示的小例子
前提:我把自己的数据集存成了npz的形式,也就是npy的压缩形式.如果电脑上安装了解压软件,双击npz文件的话,会出现每一部分压缩文件的名字例如npz文件的名称为:mnist.npz文件,用好压解压软 ...
- C# 图片保存到数据库和从数据库读取图片并显示
图片保存到数据库的方法: public void imgToDB(string sql) { //参数sql中要求保存的imge变量名称为@images //调 ...
- MVC中根据后台绝对路径读取图片并显示在IMG中
数据库存取图片并在MVC3中显示在View中 根据路径读取图片: byte[] img = System.IO.File.ReadAllBytes(@"d:\xxxx.jpg"); ...
- C#从SQL server数据库中读取l图片和存入图片
原文:C#从SQL server数据库中读取l图片和存入图片 本实例主要介绍如何将图片存入数据库.将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStr ...
- Servlet从本地文件中读取图片,并显示在页面中
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpSer ...
- [Xcode 实际操作]九、实用进阶-(12)从系统相册中读取图片
目录:[Swift]Xcode实际操作 本文将演示从系统相册中读取图片. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //添加两个协议 ...
随机推荐
- comboBox控件动态绑定数据
/// <summary> /// load加载数据 /// </summary> /// <param name=" ...
- css之rem布局
rem介绍和原理网上都是,这里不具体介绍 以iphone6设计稿 let htmlWidth = document.documentElement.clientWidth || document.bo ...
- SqlServer导入大文件Sql
sqlcmd -S "192.168.1.218" -U "sa" -P "1qaz~xsw2" -d "SispMain&quo ...
- 真实项目中 ThreadLocal 的妙用
一.什么是 ThreadLocal ThreadLocal 提供了线程的局部变量,每个线程都可以通过 set() 和 get() 来对这个局部变量进行操作,但不会和其他线程的局部变量冲突,实现了线程间 ...
- iOS中 分类(category)与扩展(Extension)的区别?
1.分类(category)的作用 (1).作用:可以在不修改原来类的基础上,为一个类扩展方法.(2).最主要的用法:给系统自带的类扩展方法. 2.分类中能写点啥? (1).分类中只能添加“方法”,不 ...
- 阿里云服务器CentOS7.5安装RabbitMQ
RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件).RabbitMQ服务器是用Erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的. 为什么 ...
- ASP.NET、.NET和C#的关系是怎样的?
1..NET是什么?.Net全称.NET Framework是一个开发和运行环境,该战略是微软的一项全新创意,它将使得“互联网行业进入一个更先进的阶段”,.NET不是一种编程语言. 简单说就是一组类库 ...
- Web自动化测试 三 ----- DOM对象和元素查找
一.DOM对象 DOM(Document Object Model文档对象模型):将HTML的各种元素映射为JS可访问的对象.HTML文档中的所有内容都是节点,这些东西在HTML中我们称为元素. 整个 ...
- 实现socket的服务和客户端通信
对学习过程中自己敲的一些关于socket有关的代码做了个简单总结,在这分享一下,给有需要的同学借鉴一下. 什么是socket? 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为 ...
- 并发编程之美,带你深入理解java多线程原理
1.什么是多线程? 多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率.线程是在同一时间需要完成多项任务的时候被实现的. 2.了解多线程 了解多线程之前我们先搞清楚几个重要的概念! 如 ...