`
zhangweioak
  • 浏览: 63240 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java调用Oracle中的Package

阅读更多
1、首先新建一个用于测试的表,以及Package
create table student(
id int primary key,
name varchar2(20),
age int,
sex varchar2(10),
address varchar2(200)
);

insert into student values(1,'Kik',21,'男','北京');
insert into student values(2,'Civil',20,'女','上海');
insert into student values(3,'lucas',17,'男','北京');
insert into student values(4,'Leos',18,'女','广州');

2、创建Oralce的Package用于查询学生信息

--包的声明
create or replace package pack_stu_test
as
procedure find_stu(
          sid in int, --ID
          sname out varchar2,--姓名
          sage out int, --年龄
          ssex out varchar2, --性别
          saddress out varchar2 --地址
          );
end pack_stu_test;

--包体
Create or replace package body pack_stu_test
as
procedure find_stu(
          sid in int, --ID
  sname out varchar2,--姓名
          sage out int, --年龄
          ssex out varchar2, --性别
          saddress out varchar2 --地址
  )as
    v_id student.id%type;
begin
v_id:=sid;
select name,age,sex,address into sname,sage,ssex,saddress from student where id = sid;
end;  
end pack_stu_test;

3、java代码实现
public static void getAllStuInfo(int id) {
		Connection conn = null;
		CallableStatement stat = null;
		ResultSet rs = null;
		
		try {
			conn = DbUtils.getConnection();
			stat = conn.prepareCall("{call pack_stu_test.find_stu(?,?,?,?,?)}");
			stat.setInt(1, id);
			stat.registerOutParameter(2, Types.VARCHAR);
			stat.registerOutParameter(3, Types.INTEGER);
			stat.registerOutParameter(4, Types.VARCHAR);
			stat.registerOutParameter(5, Types.VARCHAR);
			stat.executeQuery();
			
			System.out.println(stat.getString(2));
			System.out.println(stat.getInt(3));
			System.out.println(stat.getString(4));
			System.out.println(stat.getString(5));
			
		} catch (SQLException e) {
			e.printStackTrace();
		} finally{
			DbUtils.close(rs, stat, conn);
		}
	}
分享到:
评论

相关推荐

    java调用oracle存储过程返回结果集,Record,cursor参照.pdf

    本文介绍了Java调用Oracle存储过程返回结果集Record和Cursor的相关知识点,包括创建Type、PACKAGE和PROCEDURE,Java代码中调用存储过程,并获取结果集。这些知识点对深入了解Oracle存储过程和Java调用Oracle存储过程...

    Java调用oracle存储过程通过游标返回临时表

    本篇文章将深入探讨如何使用Java调用Oracle存储过程,并通过游标获取存储过程中返回的临时表数据。 首先,Oracle存储过程是一种在数据库端执行的预编译SQL语句和PL/SQL代码集合。它可以接收参数、执行业务逻辑并...

    Java调用oracle存储过程总结

    在Java编程中,调用Oracle数据库的存储过程是常见的任务,尤其在处理复杂业务逻辑或高效数据操作时。本文将全面总结如何使用Java与Oracle存储过程进行交互。 首先,理解Oracle存储过程的基本概念。存储过程是预编译...

    Java调用oracle函数返回oracle类(类似)集合

    3. **Java调用Oracle函数**: 在Java中,你需要使用Oracle的JDBC驱动(ojdbc.jar和nls_charset12.jar)来与Oracle数据库交互。首先,你需要加载Oracle驱动并建立数据库连接。然后,你可以通过`CallableStatement`来...

    用java调用oracle存储过程

    以上代码展示了如何在Java中调用Oracle数据库的三种类型的存储过程:无返回值的存储过程、有单个返回值的存储过程以及返回列表的存储过程。对于无返回值的存储过程,主要涉及的是参数的输入,通过`execute()`方法...

    java调用oracle存储过程(游标)相关

    总之,Java调用Oracle存储过程,尤其是处理游标,需要理解JDBC的使用、Oracle特定的类型以及存储过程的参数传递方式。通过合理的编程实践,我们可以高效地在Java应用程序中集成Oracle数据库的复杂操作。

    java调用oracle存储过程实现增删改查

    在Java编程中,调用Oracle数据库的存储...总之,通过Java调用Oracle存储过程,我们可以有效地执行数据库操作,同时利用存储过程带来的性能和安全优势。了解如何正确设置参数、执行和处理结果是成功实现这一目标的关键。

    java调用oracle存储过程示例+分页示例

    ### Java调用Oracle存储过程与分页示例详解 #### 一、无返回值的存储过程调用 在Java中调用Oracle存储过程时,若该过程无返回值,主要利用`CallableStatement`对象来执行。以下是一个具体的示例: ##### 存储过程...

    java调用Oracle存储过程

    在Java编程中,调用Oracle数据库的存储过程是常见的任务,尤其在处理复杂业务逻辑或数据操作时。本文将深入探讨如何使用Java与Oracle数据库进行交互,并调用存储过程。 首先,确保你已经在你的开发环境中安装了...

    Spring JdbcTemplate调用Oracle存储过程实现CRUD

    在本文中,我们将讨论如何使用 Spring JdbcTemplate 调用 Oracle 存储过程来实现 CRUD(Create、Read、Update、Delete)操作。我们将首先编写 Oracle 存储过程,然后编写 Java 代码使用 Spring JdbcTemplate 调用...

    java 调用oracle存储过程

    总之,Java调用Oracle存储过程涉及的主要知识点包括JDBC API、Oracle JDBC驱动、`CallableStatement`对象、参数绑定、结果集处理以及资源管理。通过学习和实践这些内容,开发者可以有效地在Java应用中集成Oracle...

    java链接oracle数据库生成xml文件

    在Java编程中,链接Oracle数据库并生成XML文件是一项常见的任务,尤其在数据交换、报表生成或数据备份等场景。这个过程通常涉及多个步骤,包括数据库连接、SQL查询、数据处理和XML文件的创建。以下是对这个主题的...

    java调用oracle储存过程

    在Java编程中,调用Oracle数据库的...总的来说,Java调用Oracle存储过程涉及到JDBC的基本用法、CallableStatement接口、参数的设置与获取等技术。掌握这些知识,将使你在处理与Oracle数据库交互的项目中更加游刃有余。

    java调用oracle存储过程.docx

    本文介绍了如何使用Java调用Oracle数据库中的存储过程,并通过具体的代码示例进行了说明。通过这种方式,可以有效地利用Oracle的强大功能,并提高Java应用程序的数据处理能力。无论是简单的数据插入还是复杂的查询...

    java调用oracle存储过程精彩总结..docx

    Java调用Oracle存储过程是数据库操作中常见的任务,特别是在企业级应用开发中。Oracle存储过程是一种在数据库中预编译的SQL和PL/SQL代码集合,可以提高性能、封装复杂逻辑,并提供更好的安全性。以下是对Java调用...

    java调用oracle存储过程并得到结果集

    在Java编程中,调用Oracle数据库的存储过程并获取结果集是一项常见的任务。在这个场景下,我们将使用JDK 1.5版本,MyEclipse集成开发环境,以及Oracle 11g数据库。以下是对这个主题的详细解释: 首先,我们需要确保...

Global site tag (gtag.js) - Google Analytics