Read blob from oracle using Java

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

import java.io.ByteArrayOutputStream;

import java.io.FileOutputStream;

import java.io.InputStream;

import java.io.OutputStream;

import java.sql.Blob;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

public class ReadBlob {

public static void main(String args[])

{

System.out.println("Oracle Connect START.");

Connection conn = null;

String url = "jdbc:oracle:thin:@address:portNo:";

String dbName = "DB Name";

String driver = "oracle.jdbc.OracleDriver";

String userName = "userName";

String password = "password";

ResultSet rs = null;

try {

Class.forName(driver).newInstance();

conn = DriverManager.getConnection(url+dbName,userName,password);

Statement stmt = conn.createStatement();

rs =stmt.executeQuery("select blob_column from tableName where somecondition");

Blob lob = null;

while (rs.next()) {

lob=rs.getBlob("blob_column");

}

InputStream in = lob.getBinaryStream();

ByteArrayOutputStream out = new ByteArrayOutputStream();

OutputStream outputStream = new FileOutputStream("blobImage.png");

int bufferSize = 1024;

int length = (int) lob.length();

byte[] buffer = new byte[bufferSize];

while((length = in.read(buffer)) != -1)

{

out.write(buffer,0,length);

}

out.writeTo(outputStream);

in.close();

conn.close();

Process p1 =Runtime.getRuntime().exec("mspaint blobImage.png");

}catch (Exception e) {

e.printStackTrace();

}

}

}

Here we will learn how to read blob data from Oracle. In this code we read image and saved the same on local system and then execute mspaint from windows to show the saved images.

时间: 2024-10-14 02:28:55

Read blob from oracle using Java的相关文章

oracle使用java source调用外部程序

oracle使用java source调用外部程序

Oracle在Java中事物管理

对于 对数据库中的数据做dml操作时,能够回滚,这一事物是很重要的 下面例子是对数据库中数据进行修改 package com.demo.oracle; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; /** * 在Java中使用Oracle事物. * 转账:一个账户减少十块钱,另一个账户上增加十块钱 * @auth

java oci 连接oracle抛java.lang.UnsatisfiedLinkError: ocijdbc11...

首先成功安装oracle客户端,可用sqlplus工具连接TNSNAMES.ORA配置的本地服务名如: conn user/[email protected] 若连接成功:客户端安装成功. java程序若要采用oci方式连接本地服务,需要进行相应的配置具体可见ORACLE_HOME/jdbc/Readme.txt文件里的说明,其中 部分摘抄如下: Setting Up Your Environment --------------------------- On Windows platform

Oracle 宣布 Java 7 生命周期终结

快速使用Romanysoft LAB的技术实现 HTML 开发Mac OS App,并销售到苹果应用商店中. <HTML开发Mac OS App 视频教程> 土豆网同步更新:http://www.tudou.com/plcover/VHNh6ZopQ4E/ 百度网盘同步:http://pan.baidu.com/s/1jG1Q58M 分享  [中文纪录片]互联网时代   http://pan.baidu.com/s/1qWkJfcS 官方QQ群:(申请加入,说是我推荐的) App实践出真知 4

名师对Oracle放弃Java EE的看法

近日网络上出现了一些关于Oracle将要放弃Java EE的说法,在Java行业引起不小的关注,甚至有些人开始担心Java会不会就此消亡,但事实上这不过是杞人忧天,疯狂软件教学总监李刚根据多年来Java行业的从业经验,对此提出以下几点分析抛砖引玉,供广大Java从业者参考. 第一点:Oracle根本没有力量左右Java发展 自从Java发展壮大以来,无论是以前的Sun公司,还是后来Oracle公司,一直都无力左右Java的发展:实际上Java的规范制定,都需要通过JCP审核,一些新机制.新功能往

疯狂软件对Oracle放弃Java EE的看法

疯狂软件对Oracle放弃Java EE的看法 近日网络上出现了一些关于Oracle将要放弃Java EE的说法,在Java行业引起不小的关注,甚至有些人开始担心Java会不会就此消亡,但事实上这不过是杞人忧天,<疯狂Java讲义>图书李刚根据多年来Java行业的从业经验,对此提出以下几点分析抛砖引玉,供广大Java从业者参考. 第一点:Oracle根本没有力量左右Java发展 自从Java发展壮大以来,无论是以前的Sun公司,还是后来Oracle公司,一直都无力左右Java的发展:实际上Ja

Oracle调用Java类开发的存储过程、函数的方法

oracle调用java类的基本步骤 1. 编写java代码,后续可以直接使用java代码,class文件或者jar包 2. 将写好的java代码导入到oracle数据库中,有两种方法:一种是使用loadjava命令:另一种是在编写PL/SQL的时候编写 3. 编写存储过程.函数 来封装java代码,以实现后面对java功能的调用 4. 调用写好的存储过程和oracle函数 loadjava命令介绍 有关loadJava的各个参数的意思,可以使用:loadjava -help 命令来获得详细帮助

oracle和java中的sql语句

在调试代码的时候遇到这样一个问题,程序运行到sql语句就抛invalid character异常,那我只好把sql语句拷出来,在oracle中执行一下,然而并没有什么错,这可难坏我了,这样都找不到错误,这到底是啥问题,摸不着头脑,一个老程序员提醒了我,在java中,sql语句的最后不能加分号,去掉之后可以正常执行了.虽然这是一个小问题,但我从来没注意过,以后就不会犯这低级错误了,哈哈.

oracle调用java方法的例子(下面所有代码都是在sql/plus中写)

在Oracle中调用Java程序,注意:java方法必须是static类型的,如果想在JAVA中使用system.out/err输出log. 需要在oracle 中执行"call dbms_java.set_output(5000);".一.helloWord1 编写JAVA程序,也是在SQL/PLUS中写,并执行. create or replace and compile Javasource named hello as public     class   Hello    {