java代码调用数据库存储过程
由于前边有写java代码调用数据库,感觉应该把java调用存储过程也写一下,所以笔者补充该篇!
package testSpring; import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet; import oracle.jdbc.OracleTypes; public class Test1 {
public static void main(String[] args) {
Connection con=null;
ResultSet res=null;
CallableStatement call=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@192.168.224.87:1523:orcl";
String userName="gb_report";
String passWord="gb_report123$";
System.out.println("连接数据库成功!");
con=DriverManager.getConnection(url,userName,passWord); call=con.prepareCall("{call P_COMMON.QUERY_PROVINCE_PAGE(?,?,?,?,?,?,?,?,?,?,?)}");//P_COMMON为包名,QUERY_PROVINCE_PAGE为存储过程名,?代表参数
call.registerOutParameter(4, OracleTypes.NUMBER);//参数下标为4及返回值的类型
call.registerOutParameter(5, OracleTypes.NUMBER);
call.registerOutParameter(7, OracleTypes.NUMBER);
call.registerOutParameter(8, OracleTypes.INTEGER);
call.registerOutParameter(9, OracleTypes.VARCHAR);
call.registerOutParameter(10,OracleTypes.VARCHAR);
call.registerOutParameter(11,OracleTypes.CURSOR);//注意这里返回值类型为游标 call.setString(1, "");//参数下标为1,输入参数类型为varchar(java对应string)
call.setString(2, "");
call.setString(3, "");
call.setString(6, ""); //执行
call.execute(); res = (ResultSet)call.getObject(11);//接受参数下标为11的返回值为游标类型,用ResultSet
while(res.next()){
System.out.println("行政ID:"+res.getString("ITEMID")+";省份名称:"+res.getString("ITEMNAME")+";");
} } catch (Exception e) {
e.printStackTrace();
}finally{ try {
if(res!=null){
res.close();
}else if(call!=null){
call.close();
}else if (con!=null) {
con.close();
}
System.out.println("关闭连接!"); } catch (Exception e2) {
e2.printStackTrace();
}
}
}
}
java代码调用数据库存储过程的更多相关文章
- java代码调用oracle存储过程
一.简介 与调用mysql存储过程类型过程都是如下 1.创建连接 Connection conn = DriverManager.getConnection(url, user, password); ...
- JAVA调用数据库存储过程
下面将举出JAVA对ORACLE数据库存储过程的调用 ConnUtils连接工具类:用来获取连接.释放资源 复制代码 package com.ljq.test; import jav ...
- Java代码调用Oracle的存储过程,存储函数和包
Java代码调用存储过程和存储函数要使用CallableStatement接口 查看API文档: 上代码: java代码调用如下的存储过程和函数: 查询某个员工的姓名 月薪 职位 create or ...
- Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件
本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import ...
- Java代码调用服务器上的Shell脚本
Java代码调用服务器上的Shell脚本 这里主要是因为我们报表平台有用到用户手工录入的数据作为结果数据且需要纳入saiku去展示 如我们所知,saiku不会自动刷新,所以需要在数据更新接口中调用服务 ...
- 存储过程之七—java代码调用
一.简介 jdbc调用存储过程与调用一般的sql语句有些差别.jdbc调用一般的sql语句的时候,返回的是结果集,或是sql语句后是否执行成功的标记量.而存储过程返回的可以是结果集,输出参数.返回状态 ...
- java中调用数据库中的存储过程和函数
public static void main(String[] args) { Connection conn =getConnection(url,user, pwd); ...
- JDBC——Java代码与数据库链接的桥梁
常用数据库的驱动程序及JDBC URL: Oracle数据库: 驱动程序包名:ojdbc14.jar 驱动类的名字:oracle.jdbc.driver.OracleDriver JDBC URL:j ...
- 用java代码调用shell脚本执行sqoop将hive表中数据导出到mysql
1:创建shell脚本 touch sqoop_options.sh chmod 777 sqoop_options.sh 编辑文件 特地将执行map的个数设置为变量 测试 可以java代码传参数 ...
随机推荐
- 51nod 1060 最复杂的数 反素数
1060 最复杂的数 基准时间限制:1 秒 空间限制:131072 KB 把一个数的约数个数定义为该数的复杂程度,给出一个n,求1-n中复杂程度最高的那个数. 例如:12的约数为:1 2 3 4 6 ...
- ACE主动对象模式
ACE主动对象模式 ACE主动对象模式解决的核心问题是,异步调用及线程context的切换.ACE主动对象的实现侧重于类代码段的并发访问,这种访问模式仅适合短小的处理流程,比如socket的accep ...
- mobiscroll时间控件
https://docs.mobiscroll.com/3-0-0_beta/javascript/numpad#events 这个是官方的日期插件,日历,什么效果都有,很强大的. mobiscrol ...
- listening 1
It was regrettable that such great issues had to be the thrust and parry of a general election. But ...
- 11462 Age Sort(计数排序)
内存不够用,用计数排序可以解决问题. #include<iostream> #include<cstdio> #include<cstdlib> #include& ...
- PHP数据结构之实现栈
接着前面PHP数据结构来学习,今天写的是实现栈. <?php class stack //定义一个栈的类 { private $size; //栈的空间大小 private $top; // 栈 ...
- 基于Python语言使用RabbitMQ消息队列(四)
路由 在上一节我们构建了一个简单的日志系统.我们能够广播消息给很多接收者. 在本节我们将给它添加一些特性——我们让它只订阅所有消息的子集.例如,我们只把严重错误(critical error)导入到日 ...
- 学习动态性能表(7)--v$process
学习动态性能表 第七篇--V$PROCESS 2007.5.30 本视图包含当前系统oracle运行的所有进程信息.常被用于将oracle或服务进程的操作系统进程ID与数据库session之间建立联 ...
- 【转】Java内存与垃圾回收调优
要了解Java垃圾收集机制,先理解JVM内存模式是非常重要的.今天我们将会了解JVM内存的各个部分.如何监控以及垃圾收集调优. Java(JVM)内存模型 正如你从上面的图片看到的,JVM内存被分成多 ...
- mysql之 mysql 5.6不停机主从搭建(一主一从基于日志点复制)
环境说明:版本 version 5.6.25-log 主库ip: 10.219.24.25从库ip:10.219.24.22os 版本: centos 6.7已安装热备软件:xtrabackup 防火 ...