我是java的新手,实际上刚刚开始使用它,因为我们正在为Oracle数据库开发,我们需要让它运行java代码。
我一直在添加一个简单的项目,没有问题:
public class Test
{
public static string Result()
{
return "Test successful!";
}
}
我可以将其加载到数据库中并使用PL / SQL访问它。 但是,当我上传我真正需要的类时,它在Oracle中被标记为“INVALID”。 我认为这是因为java中缺少引用,例如,我有这些导入:
import java.text.SimpleDateFormat;
import java.util.Date;
我认为问题在于我的Oracle数据库缺少必需的DLL(实际上是java的等价物)。
现在,有没有办法让我编译我的java类并包含我在类定义中声明的所有引用?
非常感谢!
答案 0 :(得分:1)
所有Java编译器都将import语句放入.class文件中。你无需为此做任何事情。但它们不包括导入的类。因此,您有责任确保Oracle DB服务器可以访问任何自定义类。
Oracle数据库服务器附带标准Java VM,因此当您上载要在服务器上执行的Java代码时,java.*
以下的所有类型都应该可见。
其他类型可能会丢失。阅读文档,应该解释如何上传包含所需类的JAR存档。然后创建这样一个JAR并上传它(而不是只上传一个类文件)。
答案 1 :(得分:0)
我认为Aaron Digullas的回答是最接近的,看起来数据库已经可以访问标准的java类了。
实际上,对不起,我认为导入java时出错了。
我可以使用SQL Developer访问数据库并直接在那里输入我的源代码,在我的数据库中插入一个新的java类,然后一切正常。
看起来我在编译类时或者在使用" loadjava"时出错了。命令将java类插入数据库中。