oracle 执行java_oracle调用java代码

内容主要包括:java开发,打包java程序成jar文件,上传jar文件到Oracle所在系统,Oracle导入jar文件中java类到数据库中,Oracle根据导入java类创建函数,Oracle操作函数。

用到的软件:Oracle数据库,Oracle数据库安装在Linux操作系统上;java用IDEA开发;上传jar文件用winSCP;操作Oracle数据库用PL/SQL;

1.Oracle操作的java类编写规则

Oracle支持JDK版本不同,Oracle8支持JDK1.2,Oracle9支持JDK1.3,Oracle10支持JDK1.4,Oracle11支持JDK1.5

用本章操作java方法只支持静态方法,非静态方法不可用

2.IDEA改变编译JDK版本方法

IDEA打开后,选择File-Project Structure

ff1be26a0f794fe53e5b566b2d07e90a.png

e99e76da95da737eaba11e46c5669bfc.png

IDEA打开后,选择File-Settings

dac1641b37187579259fa00c5b1b8c5f.png

3.IDEA打jar包

打开IDEA,选择File-Project Structure

b58650b5bc124199c3a12b9fec255d7d.png

打开IDEA

89cb768d4fe8f5ed3ecd717c229b1b02.png

e41cc3d1aadb3aa82e9ad1082c487e45.png

4.上传jar包

打开WinSCP,上传jar文件到根目录下的temptest文件夹中

c7875751c652de079558c3e927c7ded4.png

2beaf9755dd2dfdbddbf3ba735880198.png

4eaa676bb323ecfca82bbe1f02e97333.png

5.Oracle数据库操作jar包

69b8c7ae4892e4f8391c1f643bc4bec6.png

输入Oracle账号密码,选择连接为SYSDBA

3575cdf44934f54438b6d39afbab0a55.png

登录后的界面

36f6cc7a703431d747321d4ad2f4377b.png

选择文件-新建命令行

ea4b102097ee58ac62f351764bb24ff0.png

导入jar到Oracle中命令:

call dbms_java.loadjava('-v -r PUBLIC -synonym /temptest/oracle-code.jar');

提示会报错,查询原因是导入的jar包中不是所有类都导入成功,有的类可能导入失败了。但是大部分类都导入成功。我测试过,导入所有的类都成功了还是会报这个错误。

17de6b13208c4d6bec37740a7caf9c89.png

查询导入的类命令:

select * from dba_objects where object_type='JAVA CLASS' AND OBJECT_NAME LIKE '%com%' and TIMESTAMP > '2017-12-21:16:22:42';

0c1e1e23ed5b3df5cb40cb6663ee93b6.png

6.Oracle根据导入的java代码创建函数

运行命令:

8617fe440e41158543e9c175600cf093.png

测试创建的函数

864dea343ebe2f46e195d3a4be8864dd.png

3631464bdf0a02a80068a10172947579.png

运行函数操作Oracle表中字段

a635120e64fa35976714d685746f80b2.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值