[收藏]在oracle中发布java程序

就像前面说得,java程序或类可以被存储到数据库中,作为PL/SQL的替换或补充。Java可以被用来作为数据库的触发器、存储过程、函数、对象的成员函数。在按照下面的过程开发完java存储过程后,就可以从SQL或PL/SQL中调用JAVA存储过程,就像调用普通的PL/SQL过程一样。下面的代码描述了如何在SQL*PLUS中开发和使用一个 输出"Hello, World" 的JAVA程序的例子:
1. Write the Java program using a Java development environment like Jdeveloper or JBuilder.
2. Load the Java program into Oracle8i using either the create or replace
       java source command, or with the LOADJAVA utility.
3. Publish your Java procedure to SQL. This step identifies your Java
       procedure to SQL and PL/SQL by exposing the procedure entry point,
       mapping datatypes in Java to PL/SQL or SQL, and indicating
       parameter-passing between Java and PL/SQL or SQL.

(1)编写java程序
---可以直接在SQL*PLUS中创建JAVA的源文件,当然如果有已经编译好的java class,则可以直接跳过这一步,直接到将java程序发布出去这一步
SQL> -- first, create the Java source code
SQL> create or replace java source named "Hello" as
     public class Hello {
       static public String Message(String name) {
          return "Hello, " + name;
       }
     }
    /
Java created.
(2)发布java程序
SQL> -- Now, publish it to SQL
SQL> create or replace function hello (name VARCHAR2) return VARCHAR2
     as language java name
     'Hello.Message (java.lang.String) return java.lang.String';
Function created.
(3)使用发布的JAVA程序
SQL> -- Now, you can use the Java procedure from a SQL statement
SQL> select hello('world!') from dual;
HELLO('world!')
---------------
Hello world!
--- hello函数在8i中不支持中文,9i中支持。如:
SQL> select hello('你好!') from dual;
HELLO('你好!')
------------------
Hello, 你好!

(1)编写java程序
---可以直接在SQL*PLUS中创建JAVA的源文件,当然如果有已经编译好的java class,则可以直接跳过这一步,直接到将java程序发布出去这一步
SQL> -- first, create the Java source code
SQL> create or replace java source named "Hello" as
     public class Hello {
       static public String Message(String name) {
          return "Hello, " + name;
       }
     }
    /
Java created.
(2)发布java程序
SQL> -- Now, publish it to SQL
SQL> create or replace function hello (name VARCHAR2) return VARCHAR2
     as language java name
     'Hello.Message (java.lang.String) return java.lang.String';
Function created.
(3)使用发布的JAVA程序
SQL> -- Now, you can use the Java procedure from a SQL statement
SQL> select hello('world!') from dual;
HELLO('world!')
---------------
Hello world!
--- hello函数在8i中不支持中文,9i中支持。如:
SQL> select hello('你好!') from dual;
HELLO('你好!')
------------------
Hello, 你好!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值