将 Java 类更改为存储过程
Posted
技术标签:
【中文标题】将 Java 类更改为存储过程【英文标题】:Changing Java classes to Stored procedure 【发布时间】:2017-11-29 10:31:13 【问题描述】:我有一个 java 文件名“E2BXmlParser”,我在其中读取和操作从数据库中获取的 XML 数据。
现在我尝试在像这样更改文件后使用 Oracle SQL Developer 执行 java 文件
CREATE AND COMPILE JAVA SOURCE NAMED "E2BXmlParser" AS
--(Rest of Code).
现在它要求在代码中使用多个值,但是当我像这样从命令行执行 java 文件时,情况并非如此
loadjava -user username/password@DBalias -r E2BXmlParser.java
请帮忙。 P.S(Java文件有多个类和方法)
【问题讨论】:
"P.S (Java 文件有多个类和方法)" 你有没有为每个***类单独的CREATE AND COMPILE JAVA SOURCE NAMED ...
块(不仅为每个java 文件)?您收到的确切错误消息是什么?
【参考方案1】:
听起来您的(其余代码)是 Java(可能包含“&”字符),是这样吗?如果是这样,你不需要在使用 loadjava 之后这样做。您只需要像这样创建一个包装函数:
SQL> CREATE OR REPLACE FUNCTION E2BXmlParser_Parse
2 RETURN VARCHAR2
3 AS LANGUAGE JAVA
4 NAME 'E2BXmlParser.Parse() return java.lang.String';
我知道我在这里做了很多假设,只是想弄清楚这一点。
【讨论】:
以上是关于将 Java 类更改为存储过程的主要内容,如果未能解决你的问题,请参考以下文章