做一个将本地图片上传到mysql数据库的小实例,顺便也下载下来到桌面检测是否上传成功。

在写代码之前得先在数据库中建立image表,用来存储图片。
create table image (id int primary key auto_increment , name varchar(30) COMMENT '名称', content mediumblob COMMENT '图片');
下面直接上代码:
package jdbc_imagetest;
import java.io.*;
import java.sql.*;
/**
* 将本地文件的图片传到数据库的test的image表中并下载到本机桌面
*/
public class Test1 {
private static String url="jdbc:mysql://localhost:3306/test";
private static String user="root";
private static String password="123456";
private static Connection con;
public static void main(String[] args) throws Exception {
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection(url,user,password);
shangchuan();
xiazai();
}
//添加图片到数据库test4的file表
public static void shangchuan() throws Exception{
String sql="insert into image(name,content) values(?,?)";
PreparedStatement ptmt=con.prepareStatement(sql);
ptmt.setString(1, "|美女|.jpg");
InputStream is=null;
is=new FileInputStream("D:\\Pictures\\3.jpg");
ptmt.setBinaryStream(2, is,is.available());
//方法说明:PreparedStatement.setBinaryStream(int parameterIndex, InputStream x, int length)
ptmt.execute();
System.out.println("图片添加成功!");
}
//从数据库中把图片下载至桌面
public static void xiazai() throws Exception{
String sql="select content from image where id=3";//在我这里3.jpg是第三张图片
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(sql);//将查询结果给rs
if(rs.next()){
InputStream is=rs.getBinaryStream("fcontent");
//.getBinaryStream():a Java input stream that delivers the database column value as a stream of uninterpreted bytes
FileOutputStream fos=new FileOutputStream("C:\\Users\\Desktop\\|美女|.jpg");
byte[] buffer=new byte[1024];
int len=0;
while((len=is.read(buffer))!=-1){
fos.write(buffer,0,len);//将数据库的图片写出
}
System.out.println("下载成功!已下载至桌面,请查看");
}else{
System.out.println("图片不存在!");
}
con.close();
}
}
测试成功
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# java上传文件到数据库
# java文件上传下载示例
# Java实现用Mysql存取图片操作实例
# Java+MySql图片数据保存与读取的具体实例
# Java连接mysql数据库代码实例程序
# Java连接Mysql 8.0.18版本的方法详解
# java连接mysql数据库实现单条插入和批量插入
# java实现批量导入.csv文件到mysql数据库
# JavaWeb JDBC + MySql 通讯录实现简单的增删改查功能案例详解
# 如何基于java向mysql数据库中存取图片
# 在我
# 不存在
# 做一个
# 本机
# 先在
# 数据库中
# 查询结果
# 请查看
# 大家多多
# 中把
# 图片上传
# 第三张
# 上传
# String
# static
# url
# localhost
# jdbc
# private
# read
相关文章:
网站微信制作软件,如何制作微信链接?
建站之星各版本价格是多少?
台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?
制作网站的基本流程,设计网站的软件是什么?
如何将凡科建站内容保存为本地文件?
无锡营销型网站制作公司,无锡网选车牌流程?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
重庆市网站制作公司,重庆招聘网站哪个好?
如何通过WDCP绑定主域名及创建子域名站点?
如何制作一个表白网站视频,关于勇敢表白的小标题?
PHP 500报错的快速解决方法
临沂网站制作公司有哪些,临沂第四中学官网?
如何确保西部建站助手FTP传输的安全性?
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
如何挑选最适合建站的高性能VPS主机?
创业网站制作流程,创业网站可靠吗?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
网站制作报价单模板图片,小松挖机官方网站报价?
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
婚礼视频制作网站,学习*后期制作的网站有哪些?
建站OpenVZ教程与优化策略:配置指南与性能提升
C#如何序列化对象为XML XmlSerializer用法
如何快速上传建站程序避免常见错误?
微信小程序 五星评分(包括半颗星评分)实例代码
移民网站制作流程,怎么看加拿大移民官网?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
如何快速搭建支持数据库操作的智能建站平台?
义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?
视频网站app制作软件,有什么好的视频聊天网站或者软件?
建站之星图片链接生成指南:自助建站与智能设计教程
如何通过西部建站助手安装IIS服务器?
如何在万网主机上快速搭建网站?
黑客如何通过漏洞一步步攻陷网站服务器?
家庭建站与云服务器建站,如何选择更优?
建站之星官网登录失败?如何快速解决?
网站好制作吗知乎,网站开发好学吗?有什么技巧?
如何基于云服务器快速搭建个人网站?
南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?
深圳网站制作平台,深圳市做网站好的公司有哪些?
广平建站公司哪家专业可靠?如何选择?
如何通过VPS建站无需域名直接访问?
如何在宝塔面板中修改默认建站目录?
网站制作难吗安全吗,做一个网站需要多久时间?
宁波自助建站系统如何快速打造专业企业网站?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
在线教育网站制作平台,山西立德教育官网?
如何选择高效响应式自助建站源码系统?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
*请认真填写需求信息,我们会在24小时内与您取得联系。