浅谈Java存储过程调用(转)
这里为大家谈谈Java存储过程调用,我们可以利用Java存储过程简化数据库操作, 利用Java存储过程沟通SQL、XML、Java、J2EE和Web服务。
创建需要的测试表:create table Test(tid varchar2(10),tname varchar2(10));
第一种情况:无返回值.
create or replace procedure test_a(param1 in varchar2,param2 in varchar2)as begin insert into test values(param1,param2); end;
Java调用代码:
package com.test; import java.sql.*; import java.io.*; import java.sql.*; public class TestProcA { public Test ProcA(){ } public static void main(String[]args) { ResultSet rs=null; Connection conn=null; CallableStatement proc=null; try{ Class.forName("oracle.jdbc.driver.OracleDriver"); conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:test","test","test"); proc=conn.prepareCall("{calltest_a(?,?)}"); proc.setString(1,"1001"); proc.setString(2,"TestA"); proc.execute(); }catch(Exception e){ e.printStackTrace(); }finally{ try{ if(null!=rs){ rs.close(); if(null!=proc){ proc.close(); } if(null!=conn){ conn.close(); } } }catch(Exception ex){ } } } }
第二种情况:有返回值的存储过程(返回值非列表).
存储过程为:
create or replace procedure test_b(param1 in varchar2,param2 out varchar2) as begin select tname into param2 from test where tid=param1; end;
Java调用代码:
package com.test; import java.sql.*; import java.io.*; import java.sql.*; public class TestProcB { public TestProcB(){ } public static void main(String[]args) { Connection conn=null; CallableStatement proc=null; try{ Class.forName("oracle.jdbc.driver.OracleDriver"); conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:test","test","test"); proc=conn.
相关文档:
Java学习从入门到精通
一、 JDK (Java Development Kit)
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......
1. JDBC 驱动程序
1.1 DB2 JDBC Type 2 驱动程序
DB2 客户机
不建议使用
COM.ibm.db2.jdbc.app.DB2Driver 调用Class.forName() 方法。
1.2 IBM DB2 通用JDBC 和SQLJ 驱动程序
提供了Type 2 连接性和Type 4 连接性
可以将这个驱动程序用于app ......
Java访问权限一共有四种,他们之间的访问权限比较通过以下一组例子来解释
例子code:ModiferDemo.java
package com.glust.blog.j2se;
public class ModiferDemo{
//四种访问权限的变量(属性)
private int a;
int b;//friendly
protected int c;
public int d;
......
package dtm.tools;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Calendar;
import java.util.Dat ......