java存储Blob类型到数据库

可以从读取大文本自动,也可以存储Blob类型到

package com.mldn;

import .sql.DriverManager;

import .sql.Connection;

import .sql.PreparedStatement;

import .io.File;

import java.io.InputStream;

import java.io.FileInputStream;

public class BlobDemo

{

/**

sql脚本:

create database BigOb;

use BigOb;

drop table Bigob;

create table Bigob(id int auto_increment primary key,name varchar(80),photo longblob);

*/

// 连接驱动路径

public static final String DRIVER = “com.mysql.jdbc.Driver”; // “org.gjt.mm.mysql.driver”

// 定义数据源URL:地址

public static final String DBURL = “jdbc:mysql://localhost:3306/BigOb?characterEncoding=utf8”;

// 定义登录的用户名:

public static final String USERNAME = “root”;

// 定义数据库登录的密码:

public static final String PASSWORD = “123456”;

public static void main(String[] args) throws Exception // 抛出所有

{

Connection conn = null; // 数据库连接

PreparedStatement pstmt = null; // 预处理语句

InputStream in = null; // 准备输入流,读取文磁盘文件

// 图片文件路径

String path = File.separator + “home” + File.separator + “ubuntu” + File.separator

+ “work” + File.separator+ “logo-edubuntu.jpg”;

File file = new File(path); // 打开文件

in = new FileInputStream(file); // 实例化输入流

// 预插入语句

String sql = “INSERT INTO Bigob(name, photo) VALUES(?, ?)”;

// 变量接口

String name = “logo-edubuntu.jpg”;

// 加载数据库驱动

Class.forName(DRIVER);

// 获取数据库连接

conn = DriverManager.getConnection(DBURL, USERNAME, PASSWORD);

// 预处理操作对象

pstmt = conn.prepareStatement(sql);

// 预处理设置

pstmt.setString(1, name);

pstmt.setBinaryStream(2, in, (int)file.length()); // 存储指定字节长度的二进制数据

// 执行插入

pstmt.executeUpdate();

// 关闭操作与连接

in.close();

pstmt.close();

conn.close();

}

}

/*

二进制数据格式的图片无法直接查询,可以保存!

*/

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《java存储Blob类型到数据库
本文地址:https://www.zhiletu.com/archives-158.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微