----oracle10g    ojdbc14.jar
----oracle11g    ojdbc6.jar
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.learn</groupId><artifactId>jdbc_oracle</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>com.oracle</groupId><artifactId>ojdbc14</artifactId><version>10.2.0.4.0</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.10</version><scope>test</scope></dependency></dependencies>
</project>
package com.learn.oracle;import oracle.jdbc.OracleTypes;
import org.junit.Test;import java.sql.*;public class OracleDemo {@Testpublic void javaCallOracle() throws Exception {//加载数据库驱动Class.forName("oracle.jdbc.driver.OracleDriver");//得到Connection连接Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.88.6:1521:orcl","leon", "leon");//得到预编译的Statement对象PreparedStatement pstm = connection.prepareStatement("select * from emp where empno = ?");//给参数赋值pstm.setObject(1, 7788);//执行数据库查询操作ResultSet rs = pstm.executeQuery();//输出结果while(rs.next()){System.out.println(rs.getString("ename"));}//释放资源rs.close();pstm.close();connection.close();}/*** java调用存储过程* {?= call <procedure-name>[(<arg1>,<arg2>, ...)]}   调用存储函数使用*  {call <procedure-name>[(<arg1>,<arg2>, ...)]}   调用存储过程使用* @throws Exception*/@Testpublic void javaCallProcedure() throws Exception {//加载数据库驱动Class.forName("oracle.jdbc.driver.OracleDriver");//得到Connection连接Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.88.6:1521:orcl","leon", "leon");//得到预编译的Statement对象CallableStatement pstm = connection.prepareCall("{call p_yearsal(?, ?)}");//给参数赋值pstm.setObject(1, 7788);pstm.registerOutParameter(2, OracleTypes.NUMBER);//执行数据库查询操作pstm.execute();//输出结果[第二个参数]System.out.println(pstm.getObject(2));//释放资源pstm.close();connection.close();}/*** java调用存储函数* {?= call <procedure-name>[(<arg1>,<arg2>, ...)]}   调用存储函数使用*  {call <procedure-name>[(<arg1>,<arg2>, ...)]}   调用存储过程使用* @throws Exception*/@Testpublic void javaCallFunction() throws Exception {//加载数据库驱动Class.forName("oracle.jdbc.driver.OracleDriver");//得到Connection连接Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.88.6:1521:orcl","leon", "leon");//得到预编译的Statement对象CallableStatement pstm = connection.prepareCall("{?= call f_yearsal(?)}");//给参数赋值pstm.setObject(2, 7788);pstm.registerOutParameter(1, OracleTypes.NUMBER);//执行数据库查询操作pstm.execute();//输出结果[第一个参数]System.out.println(pstm.getObject(1));//释放资源pstm.close();connection.close();}
}

java调用存储过程之环境测试相关推荐

  1. Java调用存储过程(返回:简单类型VARCHAR、自定义对象STRUCT、列表数组VARRAY)

    ORACLE 存储过程 练习七 数组专题 写在前面的废话 由于工作需要经常用到 ORACLE存储过程 其中数组是不可避免的一组成元素.那么让我们来体会一下 ORACLE存储过程的数组到低是如何使用的. ...

  2. java 调用存储过程structdescriptor,Java调用oracle存储过程,集合入参的正确姿势

    这是我工作之前遇到的一个需求,Java调用存储过程,入参是集合.踩了一些坑,决定写个干货,和大家分享下. 项目使用的oracle版本: com.oracle ojdbc6 11.2.0.1.0 sys ...

  3. java使用集合存储过程_详解java调用存储过程并封装成map

    详解java调用存储过程并封装成map 发布于 2020-5-1| 复制链接 摘记: 详解java调用存储过程并封装成map           本文代码中注释写的比较清楚不在单独说明,希望能帮助到大 ...

  4. Java调用存储过程返回数组

    Java调用存储过程: 结合SQL操作与存储过程 create procedure set_death_age(poet VARCHAR2, poet_age NUMBER) poet_id NUMB ...

  5. Oracle ORA-06861: 文字与格式字符串不匹配 记录两次无助的遭遇:存储过程直接执行正常,java调用存储过程则报错

    一天之内,出现了两次这样的尴尬遭遇:将参数直接放到存储过程中执行时,程序运行正常,但是通过java程序去调用数据库存储过程时,就抛出异常.我和我的同事分别遇到了一次,但是,原因却大不相同. 先说说我的 ...

  6. java调用存储过程 oracle_java调用oracle存储过程

    java调用oracle存储过程 java代码 Map param = new HashMap(); param.put("in_str", "1,2,3,4" ...

  7. Java 调用存储过程 返回结果集

    这里使用Oracle数据库的thin连接. 下面是存储过程SQL 1 createorreplaceprocedure proc3(stid in student.stuid%type, stname ...

  8. java调用存储过程sqlserver_Java调用SqlServer存储过程怎么实现 | 学步园

    在使用Java开发时,经常会遇到调用SqlServer存储过程的问题.下面学步园小编来讲解下Java调用SqlServer存储过程怎么实现? Java调用SqlServer存储过程怎么实现 1.数据库 ...

  9. java 调用存储过程

    1.java 中调用pl/sql 中的存储过程 call 存储过程的名称(参数名称,参数名称)  在service 层中调用  存储过程  String  sql=" call  proc_ ...

最新文章

  1. ios ---常用的图片处理技术
  2. 2021高考杭二中成绩查询,浙江高中成绩排名2021,浙江中考分数线排行榜
  3. 一篇文章教会你创建vue项目和使用vue.js实现数据增删改查
  4. 运维大数据可视化分析平台来了,枯燥运维数据也可以生动起来
  5. Buffer的基本的原理
  6. 计算机组成原理期末复习往年卷子
  7. c语言不能在函数中求数组大小,C语言中数组长度不能用变量定义吗?
  8. PHP 错误与异常 笔记与总结(6)将错误日志保存在系统日志中
  9. [枚举] Jzoj P3387 终极武器
  10. Nginx+ffmpeg的HLS开源server搭建配置及开发具体解释
  11. 日常的SQL 语句使用
  12. iic协议 c语言,IIC协议-C语言
  13. SQL 2008安装时反复提示重启和安装.net framework 3.5
  14. WebGL/ThreeJS项目结构介绍2-创建地板并贴图
  15. 【自制小工具】快速批量查询IP归属地(自动去重、按国内外汇总,并智能识别出错误IP)
  16. 基本系统调用性能lmbench测试方法和下载
  17. excel高级筛选怎么用_Excel表格中高级筛选的优点以及常用方法介绍
  18. @value()注解
  19. Win/ubu双系统问题解决笔记
  20. win10系统下Eplan使用过程中卡死现象

热门文章

  1. logstash redis kafka传输 haproxy日志
  2. android的logcat详细用法
  3. MySQL中的单引号
  4. zigbee 空中消息溯源
  5. Silverlight Com组件支持全解析
  6. sql语句转化为分页查询的一种实现
  7. 函数式编程 - 组合compose
  8. webpack----常规配置
  9. java中的strictfp的作用
  10. Java处理某些图片红色问题