oracle 调用java

简介: 一:例子1,创建JAVA CLASSa)对于简单的CLASS,我们可以直接在PLSQL里定议,如下create or replace and compile java source named "HelloWorld"aspackage com.
一:例子
1,创建JAVA CLASS
a)对于简单的CLASS,我们可以直接在PLSQL里定议,如下
create or replace and compile java source named "HelloWorld"
as
package com.test;
public class HelloWorld {
public static String sayHello(String name){
 System.out.println("hello::"+ name);
 
 return "hello::"+ name;
}
}


或者


package com.test;
public class HelloWorld {
public static String sayHello(String name){
 System.out.println("hello::"+ name);
 
 return "hello==="+ name;
}
}


注意由于jdk版本不一致而引起的错误:


$ORACLE_HOME/jdk/javac HelloWorld.java


Uncaught exception System error: java/lang/UnsupportedClassVersionError


loadjava -user rudy/jume123456 HelloWorld.class


2)创建对就的SQL FUNCTION如:
create or replace function HelloWorld(p_name in varchar2)
return varchar2
as
language java name 'com.test.HelloWorld.sayHello(java.lang.String) return java.lang.String';


3)通过select HelloWorld('java') from dual;








二:例子


create or replace and compile java source named "javademo1" as
import java.sql.*;
public class JavaDemo1 {
  public static void main(String[] args) {
    System.out.println("hello, javademo1");
  }
}


create or replace procedure javademo1
as
language java name 'JavaDemo1.main(java.lang.String[])';




set serveroutput on size 5000
call dbms_java.set_output(5000);
execute javademo1;






三:例子


public class hello
{
 public static void msg(String name)
 {
  System.out.println("hello,"+name);
 }
};


$ORACLE_HOME/jdk/bin/javac hello.java


create or replace directory CLASS_DIR  as '/u01/app/java/com/test';


create or replace java class using bfile(class_dir,'hello.class');


create or replace procedure prc_hello(p_name VARCHAR2)
as
language java name 'hello.msg(java.lang.String)';




call prc_hello('java');




exec dbms_java.set_output(2000);










四:例子


public class hello
{
 
 public static void main(String[] args)
 {
  System.out.println("Hello");
  hello h = new hello();
  h.insertM(9);
 }
 public static void insertM(int pid)
 {
  System.out.println("This is the method insertM.");
 }
}




loadjava -u rudy/jume123456 -v -resolve hello.java




create procedure prc_hehe as language java name 'hello.main(java.lang.String[])';




call prc_hehe();


set serveroutput on size 2000


exec dbms_java.set_output(2000);
目录
相关文章
|
5月前
|
SQL Oracle 关系型数据库
java往oracle存clob类型的值时,字符长度过长怎么办?
java往oracle存clob类型的值时,字符长度过长怎么办?
77 1
|
1天前
|
Oracle 关系型数据库 Java
java操作多数据源将oracle数据同步达梦数据库
java操作多数据源将oracle数据同步达梦数据库
|
7月前
|
Oracle Java 关系型数据库
JSP struts2工资管理系统myeclipse开发oracle数据库bs框架java编程网结构
JSP 工资管理系统是一套完善的struts2设计系统MVC结构,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle10g,使用java语言开发,系统主要采用B/S模式开发。
47 1
|
7月前
|
Oracle Java 关系型数据库
JSP停车场车位管理系统myeclipse开发oracle数据库BS模式java编程网
JSP 停车场车位管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servlet+bean+dao (mvc模式开发),系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g,使用java语言开发系统主要采用B/S模式开发。
38 0
|
8月前
|
Oracle 关系型数据库 Java
java处理oracle的Clob字段类型的坑和2种解决办法
java处理oracle的Clob字段类型的坑和2种解决办法
|
8月前
|
SQL Oracle 关系型数据库
java实现oracle和mysql的group by分组功能|同时具备max()/min()/sum()/case when 函数等功能
java实现oracle和mysql的group by分组功能|同时具备max()/min()/sum()/case when 函数等功能
|
12月前
|
SQL Oracle 关系型数据库
Java swing+MySQL/Oracle 实现的飞机票预定系统订票系统课程设计
Java swing+MySQL/Oracle 实现的飞机票预定系统订票系统课程设计
258 0
|
11天前
|
DataWorks Oracle 关系型数据库
DataWorks操作报错合集之尝试从Oracle数据库同步数据到TDSQL的PG版本,并遇到了与RAW字段相关的语法错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
29 0

推荐镜像

更多