gpt4 book ai didi

java - 从 php 调用外部 java 类

转载 作者:太空宇宙 更新时间:2023-11-04 15:24:27 24 4
gpt4 key购买 nike

我正在启动一个需要与外部 Oracle 数据库通信的网站项目。 oracle数据库是由java编写的系统管理的。我想知道我是否可以在使用 php 的网站中使用这些 java 类。

作为一个例子,我试图实现类似的目标:shell_exec(“path/java GetSomething”),但“path/java”存储在远程服务器上。

我给出的方法正确吗?这会导致安全问题吗?

最佳答案

一种方法是让 php 可使用 JSP Web 服务。这是一个非常基本的开始,但其想法是,您有一个位于 java 服务器上的 jsp,并且可以通过 Web 调用它。它接受参数,然后用这些参数访问数据库,然后返回它。 PHP 调用该服务并读取它返回的数据。

DatabaseService.jsp

String query = Request.getParameter('query');
ResultSet rs = MyDbClass.executeQuery(query);


ResultSetMetaData rsmd = rs.getMetaData();
int colCount = rsmd.getColumnCount();

while (rs.next())
{
for (int i = 1; i <= colCount; i++)
{
String columnName = rsmd.getColumnName(i);
Object value = rs.getObject(i);
out.println(columnName+":"+value.toString()+'\t');
}
out.println("\r\n");
}

oracleConnect.php

$query=urlencode("SELECT * FROM DB.table");
$results=file_get_contents("http://remoteServer.com/DatabaseService.jsp?query=$query");

这是高度简化的,您需要以 php 可以使用的方式(例如 xml)输出数据,并使用 CURL 发送其他参数、API key 。而不是file_get_contents ,任何事情,但这个基本模型应该让您朝着正确的方向开始。

关于java - 从 php 调用外部 java 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20013643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com