`
love4J
  • 浏览: 72137 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Mysql 数据库创建图片记录

阅读更多
后台servlet:
package com;

import java.io.IOException;
import java.io.OutputStream;
import java.sql.Blob;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class GetImage extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		Connection con = null;
		try {
			Class.forName("com.mysql.jdbc.Driver").newInstance();
			String URL = "jdbc:mysql://localhost:3306/test?user=root&password=root";
			con = DriverManager.getConnection(URL);
			Statement stmt = con.createStatement();
			
			/*
			 * create a BLOB record in Mysql database.
			 * */
//			PreparedStatement st = null;
//			File file = new File("d:\\tom.jpg");
//			InputStream in = new BufferedInputStream(new FileInputStream(file));
//			String sql = "insert into image(Image) values(?)";
//			st = con.prepareStatement(sql);
//			st.setBinaryStream(1, in, (int) file.length());
//			int i = st.executeUpdate();
//			in.close();
			
			/*
			 * Retrieve the image from database
			 * */
			String sql = "select * from image where Id = 2";
			ResultSet rs = stmt.executeQuery(sql);
			if (rs.next()) {
				Blob b = rs.getBlob("Image");
				long size = b.length();
				byte[] bs = b.getBytes(1, (int) size);
				response.setContentType("image/jpeg");
				OutputStream outs = response.getOutputStream();
				outs.write(bs);
				outs.flush();
				rs.close();
			}
		}catch(Exception e){
			e.printStackTrace();
		} finally {
			try {
				con.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}

}


web.xml中的配置信息:
  <servlet>
    <servlet-name>GetImage</servlet-name>
    <servlet-class>com.GetImage</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>GetImage</servlet-name>
    <url-pattern>/GetImage.jsp</url-pattern>
  </servlet-mapping>

前台jsp中的code:
   <img src="GetImage.jsp">

SQL脚本:
CREATE TABLE `image` (                   
          `Id` int(11) NOT NULL auto_increment,  
          `Image` blob,                          
          PRIMARY KEY  (`Id`)                    
        ) ENGINE=InnoDB DEFAULT CHARSET=latin1  

分享到:
评论

相关推荐

    实验训练1 在MySQL中创建数据库和表.docx

    "MySQL数据库创建和表创建" 本教程将指导您在MySQL中创建数据库和表,首先需要安装和配置MySQL数据库。 1. MySQL的安装和配置 在安装MySQL之前,需要下载MySQL安装文件,例如mysql-5.5.12-win32.msi。运行该程序...

    MySQL数据库PDF文档

    "MySQL数据库PDF文档" 本文档主要介绍了MySQL数据库的基本概念、数据类型、SQL语言、约束条件、查询语言、聚合函数、子查询和多表查询等知识点。 数据库基础概念 在介绍MySQL数据库之前,首先需要了解数据库的...

    命令窗口创建mysql数据库

    【MySQL数据库连接与管理】...以上就是关于通过命令窗口创建MySQL数据库以及进行数据库管理的相关知识点,包括连接、密码修改、数据库创建和基本的SQL操作。通过熟练掌握这些命令,你可以高效地管理和操作MySQL数据库。

    MySQL数据库命令大全

    ### MySQL数据库命令详解 #### 一、MySQL服务的管理 MySQL作为一款广泛使用的开源关系型数据库管理系统,其服务的启动和停止是基本的管理操作。 **启动MySQL服务** 使用`net start mysql`命令可以启动MySQL服务...

    国家开放大学 数据库运维 形考一 MySQL数据库服务器配置

    数据库创建: 可以使用 CREATE DATABASE 语句创建数据库,使用 SHOW DATABASES 命令查看显示所有数据库,可以看到新建的数据库名称。 Workbench 图形化管理工具: Workbench 图形化管理工具是 MySQL 服务器的图形化...

    MySQL数据库应用形考实验1-4全答案.zip

    在这个"MySQL数据库应用形考实验1-4全答案.zip"压缩包中,包含了四个关于MySQL基础操作的实验训练,涵盖了从数据库和表的创建,到数据的查询、增删改,以及数据库系统的维护等关键知识点。以下是对这些实验的详细...

    MySQL数据库MySQL数据库.ppt

    【MySQL数据库概述】 MySQL是一种流行的开源关系型数据库管理系统(RDBMS),由Oracle公司维护。它的名字由创始人Michael Widenius的女儿My和SQL(Structured Query Language)组合而成。MySQL以其高效、可靠和易于...

    实验1 MySQL数据库服务器配置.docx

    MySQL数据库服务器配置实验报告 MySQL数据库服务器配置是数据运维课程中的一个重要实验,实验的主要目的是掌握MySQL的安装方法,练习MySQL数据库服务器的使用,理解MySQL服务器的组成,掌握MySQL服务器的配置方法...

    从mysql数据库中批量下载Blob图片到本地

    本教程将深入探讨如何在Java环境下,批量地从MySQL数据库中下载存储在Blob字段中的图片,并将其保存到本地文件系统。 首先,我们需要理解Blob类型。Blob是MySQL中的一个数据类型,用于存储大量二进制数据。它分为四...

    易语言连接mysql数据库来实现读取写入修改实例

    在本实例中,我们将探讨如何使用易语言连接MySQL数据库,进行数据的读取、写入和修改操作。 首先,连接MySQL数据库是所有操作的基础。易语言提供了“数据库”类库,其中包含了一系列与数据库交互的命令。我们需要...

    MySQL数据库基础与实例教程所有资源

    MySQL数据库是一种广泛使用的开源关系型数据库管理系统,以其高效、可靠和易于学习的特性深受开发者喜爱。本教程将全面介绍MySQL的基础知识,并通过实例帮助你掌握其核心操作。 首先,我们来了解一下MySQL的基本...

    Mysql数据库管理工具

    7. **触发器和存储过程**:对于高级用户,Navicat支持创建和管理触发器及存储过程,这些是MySQL数据库中实现业务逻辑和自动化操作的关键元素。 8. **安全性**:在管理MySQL数据库时,安全是至关重要的。Navicat允许...

    实验2 MySQL数据库对象管理

    总结来说,这个实验全面覆盖了MySQL数据库管理的基础操作,包括数据字典的查询、数据库和表的创建与修改、索引的管理和视图的创建,是学习数据库管理基础知识的理想实践。通过这个实验,学生能够掌握数据库对象的...

    实验2 MySQL数据库对象管理.pdf

    MySQL数据库对象管理实验知识点: 一、MySQL数据字典的作用与操作 数据字典是数据库系统中关于数据库的描述信息,它可以看作数据库中所有对象的元数据存储。在MySQL中,INFORMATION_SCHEMA数据库提供了访问数据库...

    VB6连接MySQL数据库实例含驱动和源代码

    2. **建立连接**:在VB6中,我们可以创建一个ADODB.Connection对象来建立与MySQL数据库的连接。例如: ```vb Dim conn As New ADODB.Connection conn.Open "Driver={MySQL ODBC 5.1 Driver};Server=localhost;...

    数据库MySQL入门.pdf

    MySQL数据库产品内容丰富,功能强大。MySQL支持大型数据库,支持5000万条记录的数据仓库,32位系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB。 MySQL用户管理: 1. 新建用户:可以使用命令行方式或图形...

    MySQL数据库管理器

    在MySQL数据库管理器中,"建库"功能允许用户创建新的数据库。用户可以指定数据库的名称、字符集和排序规则,这些设置将影响数据库中数据的存储和处理方式。"删库"功能则用于删除不再需要的数据库,但要注意,这个...

    数据库运维 形考任务1 实验1 MySQL数据库服务器配置.pdf

    MySQL数据库服务器配置是数据库运维中的基础工作,本实验涵盖了MySQL的安装、配置、启动与关闭、日志管理、数据库与表的创建以及存储引擎的使用等多个关键知识点。 1. **MySQL安装**:实验要求下载并安装MySQL,这...

    mysql数据库实验报告 数据表的操作

    本实验旨在深入理解MySQL数据库的基本操作,包括数据库的创建、查看、删除和使用,以及表结构的设计与管理。通过实际操作,我们将掌握如何创建和修改表结构,设置表约束,以及处理表数据的插入、删除和修改。此外,...

Global site tag (gtag.js) - Google Analytics