mysql 二进制 图片_将图片转换成二进制存入MySQL数据库中

package com.zuxia.util;

import java.sql.Connection;

import java.util.ResourceBundle;

import com.alibaba.druid.pool.DruidDataSource;

/**

* 数据库连接池

* @author Administrator

*

*/

public class JDBCUtil {

public static void main(String[] args) throws Exception {

Connection connection = getConnection();

System.out.println(connection);

}

public static Connection getConnection() throws Exception{

//从资源文件中读取

ResourceBundle resourceBundle = ResourceBundle.getBundle("jdbc");

String username = resourceBundle.getString("username");

String password = resourceBundle.getString("password");

String url = resourceBundle.getString("url");

String driverClassName = resourceBundle.getString("driverClassName");

DruidDataSource dataSource = new DruidDataSource();

//为数据源设置参数

dataSource.setUsername(username);

dataSource.setPassword(password);

dataSource.setUrl(url);

dataSource.setDriverClassName(driverClassName);

//开启SQL监控

dataSource.setFilters("stat");

return dataSource.getConnection();

}

}

/* jdbc.properties*/

username=root

password=123456

url=jdbc:mysql://localhost:3306/db_user

driverClassName=com.mysql.jdbc.Driver

package com.zuxia.util;

import java.io.File;

import java.io.FileInputStream;

import java.sql.Connection;

import java.sql.PreparedStatement;

public class PictureStore {

public static void pictureStore() {

try {

Connection connection = JDBCUtil.getConnection();

String sql = "insert into tb_user(NAME,picture) values(?,?)";

PreparedStatement prepareStatement = connection.prepareStatement(sql);

prepareStatement.setString(1, "test01");

FileInputStream in = new FileInputStream(new File("E:\\Jellyfish.jpg"));

prepareStatement.setBinaryStream(2, in, in.available());

int executeUpdate = prepareStatement.executeUpdate();

if(executeUpdate > 0){

System.out.println("图片插入成功....");

}

} catch (Exception e) {

e.printStackTrace();

}finally{

//关闭数据库和io流

in.close();

ps.close();

con.close();

}

}

}

数据库

CREATE DATABASE db_user

USE db_user

CREATE TABLE tb_user

(

id INT PRIMARY KEY AUTO_INCREMENT,#编号

NAME VARCHAR(20) NOT NULL, #名称

picture BLOB NOT NULL #照片

)ENGINE=INNODB CHARSET=utf8;

你可能感兴趣的:(mysql,二进制,图片)