oracle 执行java_oracle调用JAVA类的方法
oracle调用JAVA类的方法主要有以下三种:
1. 用loadjava方法装载;
可能是调试方便,据说这种方法比较通用。
c:\test\hello.java
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.");
}
}
C:\test>loadjava -u test/test@mydb -v -resolve
hello.java
SQL> create procedure prc_hehe as language java name
'hello.main(java.lang.String[])
2 /
过程已创建。
SQL> call prc_hehe();
调用完成。
SQL> set serveroutput on size 2000
SQL> call prc_hehe();
调用完成。
SQL> exec dbms_java.set_output(2000);
PL/SQL 过程已成功完成。
SQL> call prc_hehe();
Hello
This is the method insertM.
调用完成。
SQL>show errors;
修改java类,先删除再装载,方法:
dropjava -u test/test@mydb -v -resolve
hello.java
loadjava -u test/test@mydb -v -resolve
hello.java
2. 用sql语句创建
create or replace and compile java source named hehe
AS
public class
hello
{
public static void msg(String
name)
{
System.out.println("hello,"+name);
}
};
create or replace procedure
prc_hehe
(
p_name
VARCHAR2
)
as
language java name 'hello.msg(java.lang.String)';
/
-- 调用结果
SQL> call prc_hehe('oopp');
hello,oopp
3. 用外部class文件来装载创建
create or replace directory CLASS_DIR as 'c:\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)';
-- 测试结果
SQL> call prc_hello('java');
java
4. 可能出现的错误
SQL> call prc_hello('Jerry');
call
prc_hello('Jerry')
*
第 1 行出现错误:
ORA-29516:
Aurora 断言失败: Assertion failure at eox.c:359
Uncaught exception System
error: java/lang/UnsupportedClassVersionError
原因:机器装了多个java版本,oracle的java版本低于环境变量设置的版本。
解决方法:用$ORACLE_HOME/jdk/javac 重新编译java文件
-- The End --
oracle 执行java_oracle调用JAVA类的方法相关推荐
- Oracle数据库中调用Java类开发存储过程、函数的方法
Oracle数据库中调用Java类开发存储过程.函数的方法 时间:2014年12月24日 浏览:5538次 oracle数据库的开发非常灵活,不仅支持最基本的SQL,而且还提供了独有的PL/SQL, ...
- android 调用java类_Android中在WebView里实现Javascript调用Java类的方法
搜索热词 为了方便网页和Android应用的交互,Android系统提供了WebView中JavaScript网页脚本调用Java类方法的机制.只要调用addJavascriptInterface方法 ...
- webview 调用java_Android中在WebView里实现Javascript调用Java类的方法
为了方便网页和Android应用的交互,Android系统提供了WebView中JavaScript网页脚本调用Java类方法的机制.只要调用addJavascriptInterface方法即可映射一 ...
- python中如何调用类_python如何调用java类
由于 python 本身为脚本语言,且经常存在调用第三方库的情况,有的时候用 java 调用 python 不如用 python 调用 java 方便.下面就整理一下在 python 调用 java ...
- java 简单的调用类_java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊...
java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...
- java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊...
java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...
- JSP中调用java类中的方法
JSP中调用java类中的方法 1.新建一个项目,在src文件夹下添加一个包:如:test 2.再在包中添加一个类:如 package test; public class conDatabase { ...
- thymeleaf 调用java,thymeleaf模板引擎调用java类中的方法(附源码)
前言 由于开源了项目的缘故,很多使用了My Blog项目的朋友遇到问题也都会联系我去解决,有的是把问题留在项目的issue里提出,有的是在我的私人博客里留言,还有的则是直接添加我的qq来找我讲自己遇到 ...
- 【Groovy】Groovy 脚本调用 ( Java 类中调用 Groovy 脚本 )
文章目录 前言 一.Groovy 类中调用 Groovy 脚本 1.参考 Script#evaluate 方法分析 Groovy 类中调用 Groovy 脚本 2.创建 Binding 对象并设置 a ...
最新文章
- 大山深处,有一所希望学校
- 【Java】带你走进Debug的世界
- python __init__.py
- 聊聊SQL优化的基础思路
- mysql导入报编码错误问题解决
- 暴风集团仅剩10余人;搜狗告百度输入法侵权案再驳回;Linux 5.6发布 | 极客头条...
- ssh提示connection refused_2020高考语法填空必会技巧之有提示词(一)
- WPF中查找指定类型的父控件
- Win10 启动项找不到ctfmon项,系统启动后无法输入文字怎么办?
- 疯狂Java讲义(十三)----第一部分
- H5+CSS3移动商城界面.七天从零实战课程-会员_登录
- 2019强网杯部分writeup
- 盘一盘 Python 特别篇 18 - 时区|夏令时
- 如何解决:微云下载文件总是下载失败
- 时间与运动-MATHLAB机器人学、机器视觉与控制
- 麒麟座V3.1接入OneNET平台初体验--上传温湿度
- Excel图表7——漏斗图
- 进程注入之DLL注入
- 黑苹果亮度调节 小太阳
- 采样模型外表面点云之曲线救国方法
热门文章
- 字节跳动python面试题_字节跳动2019两道春招笔试题python解法
- android 支付宝 40247,支付宝 app支付异常摘记 -- ALI40247
- linux 网络服务器 源码下载,linux下 各类tcp网络服务器的实现源代码.doc
- 加速度和陀螺仪 日常活动识别 跌倒检测_巢湖房屋安全检测,幼儿园房屋质量检测新趋势-房屋鉴定专业团队...
- 老是说我编译版本不够_海思3518E编译环境搭建
- 小孔成像实验探究的软件_【亲子实验】科学小制作:神秘小潜艇科学小论文作品在科学课(小学版)2004年第5期发表,科学小发明潜水艇与沉浮子...
- SecureCRT 设置和修改
- 利用反射操作bean的属性和方法
- DEDE文章列表加上序号效果
- Silverlight 4 Beta正式发布