实际上,我正在为 Java 应用程序编写一个插件,它有两种形式:1.) 作为可执行文件和 2.) 可以作为小程序从网页启动。
在某些时候,我需要一个自定义表单来显示来自 Oracle 数据库的各种数据。我构建了该表单和执行所需 jdbc 查询的类。
现在,当涉及到可执行文件时,表单会正确弹出并显示预期结果,但是当我尝试从小程序调用它时,它启动时所有字段都是空的,并且没有任何错误。
我唯一能想到的是,由于网络的异步性,在查询返回结果之前就弹出了表单。
如果是这样,是否有解决方法?
最佳答案
我相信您只是捕获异常,因此看不到它们。或者只是不知道在哪里搜索它们。你打开小程序控制台了吗?我相信你会在那里发现一些异常(exception)。
Applet 与应用程序没有区别。小程序只是有安全限制。它不能与下载它的服务器以外的服务器进行 TCP 连接。重要的是:安全检查非常愚蠢。它基于字符串比较。它只是比较小程序库的主机名和您要连接的主机的主机名。例如,如果您的主机名是 myhost.mycompany.com,它的 IP 是 200.201.202.203,即使 DNS 名称的 ping 返回您的 IP 地址,您也必须在这两个地方使用 DNS 名称或 IP 地址。检查这个,我希望一切正常。
顺便说一句,您可能知道您使用的是“旧的”、“过时的”设计吗?这是90年代设计的开始。人们在大约 12 年前转向 N 层架构,因此,为了改进您的解决方案,您应该在服务器端实现数据库访问并通过某种协议(protocol)与服务器通信,例如休息API。
关于java - 通过java小程序查询oracle数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4645547/