oracle 调用Java 学习二

来源:互联网 发布:淘宝助理5.6.9.0下载 编辑:程序博客网 时间:2024/06/05 03:09

 /**使用oracle 数据库,调用Java ,实现数据库连接访问表*/

/**

 第一步:新创建一个简单的表,供我们做操作

*/

create table myTest117(userId varchar2(20) ,username varchar2(20));
insert into myTest117 values('11','zhangsan');
insert into myTest117 values('22','lisi');
insert into myTest117 values('33','wangwu');

select * from myTest117;

 

/**

第二步:编写 Java source 供oracle 调用,实现对表的查询

*/

create or replace and compile java source named connetTest as
import java.sql.* ;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.* ;
import java.util.Date;
import oracle.sql.ARRAY;
import oracle.sql.ArrayDescriptor;
public class connetTest
{
   static public String getMsg(String name) {
        String sql = "select m.username as dd from myTest117 m";
        String tmpStr = "" ;
        PreparedStatement pstmt = null ;
        ResultSet rs = null ;
        Connection conn = null ;
         try
         {
              conn = DriverManager.getConnection("jdbc:default:connection:");
              pstmt = conn.prepareStatement(sql);
              rs = pstmt.executeQuery();
              while (rs. next ())
                    tmpStr += rs.getString("dd")+" ; ";             
          }
         catch(SQLException e)
         {
             System.err.println(e.getMessage());
         }
         finally
         {
             try
             {
                 rs. close ();
                 pstmt. close ();
                 /**/ /* if((conn!=null)||!conn.isClosed())
                     conn.close(); */
             }
             catch(SQLException e)
             {
                 System.err.println(e.getMessage());
             }
         }
        return tmpStr;
    }
}

 

/**

第三步:创建一个函数,调用该Java 代码

*/

create or replace function connetTest(name varchar2) return varchar2
is language java name 'connetTest.getMsg(java.lang.String) return java.lang.String';

 

 

/**

第四步:我们可以测试下,是否实现

*/

select  connetTest('xx') from dual;

原创粉丝点击