如何使用 JDBC 将图像插入数据库?


如何使用 jdbc 将图像插入数据库?

PreparedStatement接口的setBinaryStream()方法接受一个表示参数索引的整数和一个InputStream对象,并将参数设置为给定的InputStream对象。每当您需要发送非常大的二进制值时,您都可以使用此方法。

SQL 数据库提供了一种名为 Blob(二进制大型对象)的数据类型,您可以在其中存储大型二进制数据,例如图像。

使用 JDBC 存储图像

如果您需要使用 JDBC 程序将图像存储在数据库中,请创建一个 Blob 数据类型的表,如下所示:

CREATE TABLE Tutorial(Name VARCHAR(255), Type INT NOT NULL, Logo BLOB);

现在,使用 JDBC 连接到数据库并准备一个 PreparedStatement 将值插入到上面创建的表中:

php订单系统可以整合支付宝接口 php订单系统可以整合支付宝接口

一、系统设置:用Dreamwe*er等网页设计软件在代码视图下打开【dddingdan/config.php】系统设置文件,按注释说明进行系统设置。 二、系统使用:WFPHP在线订单系统是无台后的,不用数据库,也不用安装,解压源码包后,先进行系统设置,然后把整个【dddingdan】文件夹上传到服务器。在网页中要插入订单系统的位置,插入系统调用代码: 注意:id=01就表示使用样式01,如果要使

php订单系统可以整合支付宝接口 0 查看详情 php订单系统可以整合支付宝接口
String query = "INSERT INTO Tutorial(Name, Type, Logo) VALUES (?, ?, ?)";
PreparedStatement pstmt = con.prepareStatement(query);

使用PreparedStatement接口的setter方法设置占位符的值,并使用setBinaryStream()方法设置Blob数据类型的值。

FileInputStream fin = new FileInputStream("j*afx_logo.jpg");
pstmt.setBinaryStream(3, fin);

示例

以下示例演示如何使用 JDBC 程序将图像插入 MySQL 数据库。在这里,我们创建一个包含 Blob 数据类型的表,将值插入到表中(Blob 类型的 BinaryStream 对象),并检索表的内容。

import j*a.io.FileInputStream;
import j*a.io.FileNotFoundException;
import j*a.sql.Connection;
import j*a.sql.DriverManager;
import j*a.sql.PreparedStatement;
import j*a.sql.ResultSet;
import j*a.sql.SQLException;
import j*a.sql.Statement;
public class InsertingImageToDatabase {
   public static void main(String args[]) throws Exception {
      //Registering the Driver
      DriverManager.registerDriver(new com.mysql.jdbc.Driver());
      //Getting the connection
      String mysqlUrl = "jdbc:mysql://localhost/sampleDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Creating the Statement
      Statement stmt = con.createStatement();
      //Executing the statement
      String createTable = "CREATE TABLE Tutorial( "
         + "Name VARCHAR(255), "
         + "Type VARCHAR(50), "
         + "Logo BLOB)";
      stmt.execute(createTable);
      //Inserting values
      String query = "INSERT INTO Tutorial(Name, Type, Logo) VALUES (?, ?, ?)";
      PreparedStatement pstmt = con.prepareStatement(query);
      pstmt.setString(1, "J*aFX");
      pstmt.setString(2, "J*a_library");
      FileInputStream fin = new FileInputStream("E:\images\j*afx_logo.jpg");
      pstmt.setBinaryStream(3, fin);
      pstmt.execute();

      pstmt.setString(1, "CoffeeScript");
      pstmt.setString(2, "scripting Language");
      fin = new FileInputStream("E:\images\coffeescript_logo.jpg");
      pstmt.setBinaryStream(3, fin);
      pstmt.execute();
      pstmt.setString(1, "Cassandra");
      pstmt.setString(2, "NoSQL database");
      fin = new FileInputStream("E:\images\cassandra_logo.jpg");
      pstmt.setBinaryStream(3, fin);
      pstmt.execute();
      System.out.println("Data inserted");
      ResultSet rs = stmt.executeQuery("Select *from Tutorial");
      while(rs.next()) {
         System.out.print("Name: "+rs.getString("Name")+", ");
         System.out.print("Tutorial Type: "+rs.getString("Type")+", ");
         System.out.print("Logo: "+rs.getBlob("Logo"));
         System.out.println();
      }
   }
}

输出

Connection established......
Data inserted
Name: J*aFX, Tutorial Type: J*a_library, Logo: com.mysql.jdbc.Blob@7dc5e7b4
Name: CoffeeScript, Tutorial Type: scripting Language, Logo:
com.mysql.jdbc.Blob@1ee0005
Name: Cassandra, Tutorial Type: NoSQL database, Logo: com.mysql.jdbc.Blob@75a1cd57

注意:您只能使用 JDBC 程序存储和检索 .gif 或 .jpeg 或 .png 类型的图像。

以上就是如何使用 JDBC 将图像插入数据库?的详细内容,更多请关注其它相关文章!


# 优惠卷网站推广方案  # 如皋市网站推广排名  # 晋江网站建设的文章  # SEO教学反思日记文案  # 拉萨seo招聘  # 卫辉营销推广公司  # 浙江网站建设公司比较好  # 热歌关键词排名怎么排的  # 东营seo排名工具  # 东城网站优化与推广  # 如何使用  # 并将  # 中文网  # 相关文章  # 您可以  # 在这里  # 创建一个  # 您需要  # 系统设置  # 支付宝 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894 】


相关推荐: 抖音怎么解除第三方绑定_抖音解除第三方平台绑定方法介绍  《律学法考》查看学习数据方法  掌握CSS :has() 选择器:父选择器、嵌套限制与常见陷阱解析  QQ邮箱手机版网页版 QQ邮箱登录入口地址  c++20的指定初始化(Designated Initializers)怎么用_c++ C风格结构体初始化  国际经济与贸易就业方向解析  b站怎么用微信登录_b站微信登录方法  Go语言反射机制:如何访问被嵌入结构体遮蔽的方法  包子漫画官网链接官方地址 包子漫画在线观看官网首页入口  Symfony路由参数转换器:实体存在性验证与错误处理策略  PDF如何批量加注释_PDF多文件批注高亮操作教程  Lar*el Dusk 测试中管理浏览器权限:以剪贴板访问为例  《桃源记2》资源采集攻略  sublime如何撤销关闭的标签页_sublime重新打开已关闭文件技巧  Python中处理嵌套字典与列表的数据提取与过滤教程  《偃武》甘宁技能详解  猫眼电影app如何设置电影上映提醒_猫眼电影上映提醒设置教程  mysql归档数据怎么导出为csv_mysql归档数据导出为csv文件的方法  喜茶GO更换登录账号方法  邦丰播放器频道搜索设置  Lar*el Socialite单设备登录策略:实现用户唯一会话管理  PHP 4 函数中引用参数的默认值限制与解决方案  GBA模拟器手柄按键设置  PHP页面重载时变量值不重置的实现方法  TikTok网页版入口快速访问 TikTok官网账号登录方法  多闪APP官方下载安装入口_多闪最新版本获取入口  圆通快递官网入口查询单号 手机版官方查询入口  抖音号显示企业机构号是什么意思?企业机构号申请条件是什么?  《七读免费小说》开通会员方法  macosmonterey系统外接显示器驱动怎么安装_macosmonterey外接显示器驱动与分辨率调整  向日葵客户端怎么进行语音通话_向日葵客户端语音通话功能使用方法  Excel宏怎么删除_Excel中删除宏的详细操作流程  J*aScript桌面应用_Electron多进程架构实战  《微信》视频号原创声明开启方法  Pandas中基于动态偏移量实现DataFrame列值位移的策略  C++怎么解决数值计算中的精度问题_C++浮点数误差与数值稳定性分析  PHP中获取HTTP响应状态消息:方法与限制  《盗墓笔记手游》技能介绍  《图怪兽》退出登录方法  铁路12306官网入口 铁路12306中国铁路官网登录首页  word文档中的分隔符有哪些不同类型和用途_Word分隔符类型与用途方法  《雷电模拟器》截图方法介绍  J*aScript二进制处理_ArrayBuffer与Blob  c++如何链接Boost库_c++准标准库的集成与使用  基于键值条件高效映射 Pandas DataFrame 多列数据  J*aScript类型数组_TypedArray使用  知乎APP怎么查看自己被邀请的问题_知乎APP邀请回答记录查看与参与方法  抖音网页版地址直接进入_抖音网页版在线观看入口  Google Drive API 认证:服务账户与OAuth 2.0的选择与实践  盲鳗善于分泌黏液猜猜主要用来做什么 

 2023-08-29

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.