2019独角兽企业重金招聘Python工程师标准>>>

package test;import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.PrintStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class Test {private Connection conn;/*** 得到一个数据库的连接* * @return 返加Connection对象*/public Connection getConnection() {try {Class.forName("oracle.jdbc.driver.OracleDriver");conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:lyx", "scott", "tiger");} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return conn;}/*** 向表中插入图片* * @param path图片所在的路径* @return 整形 判断成功或失败*/public int insertImage(String path) throws Exception {int i = 0;Statement st = null;ResultSet rs = null;conn=this.getConnection();conn.setAutoCommit(false);//设置数据库为不自动提交,必须的一步st = conn.createStatement();//先插入一个空对象,这里我调用了Empty_BLOB()函数i = st.executeUpdate("insert into image (id,image) values (seq1.nextval,Empty_BLOB())");//以行的方式锁定rs = st.executeQuery("select image from image where id=(select max(id) from image) for update");if (rs.next()) {//得到流oracle.sql.BLOB blob = (oracle.sql.BLOB) rs.getBlob(1);//从得到的低级流构造一个高级流PrintStream ps = new PrintStream(blob.getBinaryOutputStream());BufferedInputStream bis = new BufferedInputStream(new FileInputStream(path));byte[] buff = new byte[1024];int n = 0;//从输入到输出while ((n = bis.read(buff)) != -1) {ps.write(buff, 0, n);}//清空流的缓存ps.flush();//关闭流,注意一定要关ps.close();bis.close();}rs.close();st.close();conn.close();return i;}public static void main(String[] args) throws Exception {Test test=new Test();test.insertImage("e:\\3.jpg");System.out.println("OK");}}

转载于:https://my.oschina.net/u/2299924/blog/2250533

Java 对Oracle数据库中的 BLOB类型 插入图片相关推荐

  1. oracle blob update,Oracle数据库中对BLOB数据的操作问题

    [TechTarget中国原创]问:请问在Oracle数据库中,如何插入并检索二进制大对象数据(BLOB)? 答:我建议在处理大对象数据之前,先阅读一下"Oracle应用开发者指南" ...

  2. java向Oracle数据库中插入blob字段数据

    java不能直接想插入其他普通类型数据一样插入blob字段数据,因为blob相当于一个大文件块,里面有游标,需要初始化blob游标才能插入数据.所以我们要先插入一个空的blob数据,以初始化游标,然后 ...

  3. oracle blob字段索引,在oracle 数据库中使用 Blob 字段存储 一张图片并读取

    1. 进行数据库的设置  create table image_lob(t_id varchar2(5) not null,t_image blob not null); create or repl ...

  4. 用python读取pg数据库中的blob类型图片数据,转换存成jpg格式存到本地文件夹

    先啰嗦一下,热热身 在工作中,我们常见到数据库中的数据类型主要为char,varchar,text等,但是有时我们也会用blob格式来存储语音文件或者图像文件,在网上找了很多,都没找到合适的办法,只好 ...

  5. oracle将字符串转化为blob,oracle String类型转换成blob类型插入

    CERT_1以前是varchar(3000),现在的类型是blob类型,做数据库迁移时,使用导入工具不能直接导入,所以使用SQL,下面是SQL declare directions      BLOB ...

  6. Java 读取Oracle数据库中的Date日期型怎么去掉秒后面的0

     Oracle数据去0 分享方法 :为什么多了一个0,数据库里面的数据是没有0的,取出来的时候多了一个0,这是Oracle数据搞的鬼,解决代码如下 可参考 [java] view plaincop ...

  7. oracle数据库中对varchar类型求max的解决方法

    http://kidiaoer.iteye.com/blog/1064902 在oracle中,如果对varchar类型求max会发现9比10大,这是因为数据类型的原因,我们需要将varchar转换成 ...

  8. oracle+资料类型不一致吗,oracle数据库中,字段类型不一致,导致查询慢

    最近一个WEBSERVICE突然变慢了,后查询发现,后台查询也非常慢(记录条数800多万),索引也有,如下语句 SELECT P.ID,P.RECORD_ID,P.KEY_NAME,P.KEY_CON ...

  9. oracle怎么截取long类型,Oracle 数据库中 Long 类型字段的读取

    最近在一个项目中遇到了需要读取 Oracle 数据库中的 Long 类型的字段的问题,折腾了好久,最后找到了其中的一个解决办法,决定记下了做个明灯吧! 在用 Mybatis 将该字段的数据映射到 St ...

最新文章

  1. 机器学习101:我们天天都在说的机器学习,究竟该怎么入门?
  2. Linux下安装配置virtualenv与virtualenvwrapper
  3. 摄像机丢失信号及偏色的检测思路
  4. 拖动无标题栏的窗体,需要处理的三个事件
  5. java关于泛型的实验代码_[ Java学习 ] 泛型类的应用实验
  6. 商品详情页html,天天生鲜商品详情页HTML+css
  7. [vue]vue路由篇vue-router
  8. python有什么用-python是什么意思?python有什么用?
  9. 修改html本地样式,html-如何通过Javascript更改CSS类样式?
  10. Widget实例可以添加多个并独立更新
  11. 手机微商城可以安装到虚拟服务器,安装使用:百家CMS微商城系统安装教程(图文说明)...
  12. RDD与DataFrame
  13. 筛选中很容易粘贴到被隐藏部分_excel复制粘贴:如何将数据粘贴到筛选区域中?...
  14. 内存颗粒位宽和容量_DDR4内存颗粒--美光篇
  15. 查询-SPJ练习3参考答案
  16. 微信小程序和uni-app面试高频知识点
  17. Python爬取豆瓣读书Top250(正则表达式)
  18. echarts折线图鼠标悬浮竖线_Echarts折线图问题,鼠标悬停的地方不能正确展示数据怎么回事呢?...
  19. LOJ 10155. 「一本通 5.2 例 3」数字转换
  20. CE_tutorial_game

热门文章

  1. centos8平台用NetworkManager/nmcli管理网络
  2. Prometheus 的云上 MySQL 监控实践
  3. 网络管理与维护作业12
  4. Jmeter工具使用-分布式架构和服务器性能监控解决方案
  5. 跨站点脚本编制-XSS 描述及解决方法
  6. class path resource [logback.xml] cannot be resolved to URL because it does not exist 问题解决
  7. IDEA设置生成带注释的getter和setter解决方案 (图文教程)
  8. Rails I18n验证弃用警告
  9. jQuery hasAttr检查元素是否有属性[重复]
  10. JavaScript截断/切片/修剪掉字符串中的最后一个字符