ITPub博客

首页 > 数据库 > Oracle > 12c中导入java的jar文件

12c中导入java的jar文件

原创 Oracle 作者:xfhuangfu 时间:2017-12-21 15:35:57 0 删除 编辑
1、创建表空间
[oracle@host01 /]$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on Thu Dec 21 15:29:33 2017
Copyright (c) 1982, 2014, Oracle.  All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
SQL> alter session set container=xfpdb;
SQL> create tablespace xftbs datafile '/u01/app/oracle/oradata/PRODCDB/xfpdb/xftbs01.dbf' size 10m;
Tablespace created.
2、创建用户并授权
SQL> create user xf identified by xf default tablespace xftbs quota unlimited on xftbs;
User created.

SQL> grant connect ,resource to xf;
Grant succeeded.

3、使用xf用户连接数据库执行jar包导入
需要将commons-math3-3.0.jar文件上传至/home/oracle/files/下
使用dbms_java.loadjava导入jar包
[oracle@host01 admin]$ sqlplus xf/xf@192.168.56.101:1521/xfpdb.example.com

SQL*Plus: Release 12.1.0.2.0 Production on Tue Dec 19 13:58:13 2017

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> call dbms_java.loadjava('-v -r PUBLIC -sysnonym /home/oracle/files/commons-math3-3.0.jar');

Call completed.

SQL> begin
      dbms_java.loadjava('-v -r PUBLIC -sysnonym /home/oracle/files/commons-math3-3.0.jar');
     end;
    /

PL/SQL procedure successfully completed.

SQL> exec dbms_java.loadjava('-v -r PUBLIC -sysnonym /home/oracle/files/commons-math3-3.0.jar');

PL/SQL procedure successfully completed.

或者使用loadjava命令
[oracle@host01 admin]$ loadjava -force -thin -user xf/xf@192.168.56.101:1521/xfpdb.example.com -resolve /home/oracle/files/commons-math3-3.0.jar

4在Oracle数据库创建java代码

SQL> create or replace and compile java source named jar_norm as
  2  import org.apache.commons.math3.distribution.NormalDistribution;
  3  public class jar_norm {
  4     public static double s_inv(double s){
  5     NormalDistribution normalDistribution =new NormalDistribution(0,1);
  6     double S1=normalDistribution.inverseCumulativeProbability(s);
  7     return S1;
  8     }
  9     public static double s_dist_c(double s){
 10     NormalDistribution normalDistribution =new NormalDistribution(0,1);
 11     double S1=normalDistribution.cumulativeProbability(s);
 12     return S1;
 13     }
 14  }
 15  /

Java created.

-end-

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28373936/viewspace-2149028/,如需转载,请注明出处,否则将追究法律责任。

全部评论
Oracle DBA Oracle 12c OCM,11g OCM MySQL 5.6/5.7 OCP 13年以上IT从业经验,有丰富的数据库和开发领域经验,多年Oracle相关工作经验和java开发经验。

注册时间:2013-09-05

  • 博文量
    78
  • 访问量
    131435