`
ruilinruirui
  • 浏览: 1050579 次
文章分类
社区版块
存档分类
最新评论

java读取oracle的存储过程

 
阅读更多

java读取oracle的存储过程(转 邢红瑞's blog)

java读取oracle的存储过程网上的例子不少,都太简单,没有一个返回参考游标的,返回记录集,自己写一个怕日后忘了。

oracle的PLSQL

CREATE OR REPLACE package chapter_13 as
TYPE rs IS REF CURSOR ;
procedure founder(oFields out rs);

end;

CREATE OR REPLACE package body chapter_13 as

PROCEDURE founder(oFields out rs) IS
BEGIN
open oFields for
select * from person;
END founder;
end;
java代码

package jdbc;

import java.io.*;
import java.sql.*;
import java.text.*;
import oracle.jdbc.OracleTypes;

public class TestStoredProcedures {
Connection conn;

public TestStoredProcedures() {
try {
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
conn = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:orcl", "jola", "jola");
} catch (SQLException e) {
System.err.println(e.getMessage());
e.printStackTrace();
}
}

public static void main(String[] args) throws Exception {
new TestStoredProcedures().process();
}

public void process() throws SQLException {

long start = 0;
long end = 0;
CallableStatement cstmt = null;

try {
start = System.currentTimeMillis();

// *** SQL92 escape syntax ***


cstmt = conn.prepareCall(
"{call chapter_13.founder(?)}");
cstmt.registerOutParameter(1, OracleTypes.CURSOR);
ResultSet rs = null;

cstmt.execute();
rs = (ResultSet)cstmt.getObject(1);
while (rs.next()) {
System.out.println(rs.getString("NAME"));
}
rs.close();

end = System.currentTimeMillis();
System.out.println("Average elapsed time = " +
(end - start) / 8 + " milliseconds");
} catch (SQLException e) {
System.err.println("SQL Error: " + e.getMessage());
} finally {
if (cstmt != null) {
try {
cstmt.close();
} catch (SQLException ignore) {}
}
}
}

protected void finalize() throws Throwable {
if (conn != null) {
try {
conn.close();
} catch (SQLException ignore) {}
}
super.finalize();
}
}

分享到:
评论

相关推荐

    java调用oracle存储过程入门实例 增删改查

    java调用oracle存储过程入门实例 增删改查 使用dom4j读取数据库的配置文件(xml) jdbc中connection的管理 使用threadlocal

    java中读取ORACLE中BLOB字段存储的图片

    java中读取ORACLE中BLOB字段存储的图片

    jdbc连接oracle,执行存储过程,带数据库存储过程

    jdbc连接oracle,执行存储过程,带数据库存储过程,代码是详细的源码,读取配置文件,连接jdbc,执行存储过程。

    oracle存储图片

    一个oracle存储图片的代码,随便带有java序列号的编写

    Java操作Oracle数据库-多线程.rar

    Java操作Oracle数据库-多线程,演示了使用多线程技术从oracle 数据库中读取函数、存储过程等功能。,具体实现方法请详见源代码。

    java连接opc读取数据

    最近由于项目需要,在已有java web工程里添加读取opc的接口类。通过接口将opc数据读取到本地存于oracle数据库中,供本管理系统趋势分析用。本实例在win7、xp系统本地均已调通。压缩包里有本人写的每一步详细说明操作...

    用java编程将txt文件数据导入oracle

    工作中有很多数据以txt方式存储,需要导入oracle数据库处理(方便进行计算、统计),因文件较多,不便于手工处理,所以编写此程序以便进行数据导入。已经测试过,可以将数据导入oracle。

    图片存入Oracle中,用clob和blob两种方式

    简单写的一个小工具,把图片存入oracle中,按clob和blob两种方式存储,并读取图片

    JAVA上百实例源码以及开源项目

    Java存储与读取对象 1个目标文件 如题 Java调色板面板源代码 1个目标文件 摘要:Java源码,窗体界面,调色板  使用Java语言编写的一款用于反映颜色变化的面板,也就是大家熟悉的颜色调色板演示程序。原理是初始化颜色...

    Oracle数据恢复神器Dbseeker 2.5

    Dbseeker for Oracle Database是一款用Java语言开发的Oracle数据库恢复软件。Dbseeker能够绕过Oracle读数据引擎,直接扫描数据文件的数据块, 分析数据块格式,读取数据库中的表记录。因此,在由于各种原因引起的...

    smartmeter:用Java和Raspberry Pi读取我的电和煤气表

    Raspberry PI Java Energy Smartmeter应用程序Oracle Application的Java Embedded Suite读取电表(燃气和电)并将这些数据公开为可用于您的移动应用程序中的静态服务所有数据每30分钟存储在Embedded Derby Database...

    JAVA上百实例源码以及开源项目源代码

    Java存储与读取对象 1个目标文件 如题 Java调色板面板源代码 1个目标文件 摘要:Java源码,窗体界面,调色板  使用Java语言编写的一款用于反映颜色变化的面板,也就是大家熟悉的颜色调色板演示程序。原理是初始化颜色...

    toad for oracle 11

    TOAD 可直接从 VCS源数据库读取数据库模式或对象,快速确定代码版本,并在新版本出现时向用户发出通知。为开发者和项目经理提供了可以信赖的变化管理机制。 PL/SQL Debugger PL/SQL Debugger 提供了点击式应用...

    java开源包4

    缓存读取自redis的slave节点,写入到redis的master节点。 Java对象的SQL接口 JoSQL JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java...

    java开源包101

    缓存读取自redis的slave节点,写入到redis的master节点。 Java对象的SQL接口 JoSQL JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java...

    java开源包11

    缓存读取自redis的slave节点,写入到redis的master节点。 Java对象的SQL接口 JoSQL JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java...

    java开源包6

    缓存读取自redis的slave节点,写入到redis的master节点。 Java对象的SQL接口 JoSQL JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java...

    java开源包9

    缓存读取自redis的slave节点,写入到redis的master节点。 Java对象的SQL接口 JoSQL JoSQL(SQLforJavaObjects)为Java开发者提供运用SQL语句来操作Java对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何Java...

    Java面试宝典2020修订版V1.0.1.doc

    17、Java怎么读取文件和写入文件 65 18、java怎么复制文件 68 19、用JDBC如何调用存储过程 69 20、JDBC中的PreparedStatement相比Statement的好处 71 21、写一个用jdbc连接实例。 71 22、ArrayList和Vector的区别? ...

Global site tag (gtag.js) - Google Analytics