如何让我的Java代码在连接后显示结果?

时间:2012-07-13 15:15:13

标签: java php html

我有java代码连接到我编写的PHP脚本并发布到它。 PHP联系API进行评估,并以html格式返回结果。

Java似乎可行,但在Eclipse中,结果是原始html,而不是呈现形式。

我想让我的结果在浏览器中启动。我尝试将它放在我的xampp文件夹中,但没有做任何事情,它只是在点击文件时下载了Java脚本。

关于如何实现这一目标的任何想法?我愿意以某种方式更改PHP代码,让它只返回变量并让Java创建一些表单供用户查看。我现在不是那么擅长Java。想法和例子很棒!

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;

public class Connect {


    public void POSTDATA() {
    }
    public static void main(String[] args) {
        try {
        // Construct data
        String data = URLEncoder.encode("ipaddress", "UTF-8") + "=" + URLEncoder.encode("98.36.2.53", "UTF-8");


        // Send data
        URL url = new URL("http://localhost/myfiles/WorkingVersion.php");
        URLConnection conn = url.openConnection();
        conn.setDoOutput(true);
        OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
        wr.write(data);
        wr.flush();

        // Get the response
        BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String line;
        while ((line = rd.readLine()) != null) {
            System.out.println(line);
     }
        wr.close();
        rd.close();
    } catch (Exception e) {
    }
    }

}

1 个答案:

答案 0 :(得分:0)

您的Java应用程序只是连接到服务器并使用ipaddress = 98.36.2.53进行POST。如果要在浏览器中显示结果,为什么还要使用Java?

几个简单的解决方案是:

  • 重写您的PHP脚本以通过GET接受参数并通过Web浏览器中的URL访问它http://localhost/myfiles/WorkingVersion.php?ipaddress=98.36.2.53

  • 编写一个使用表单发布数据的HTML页面 - 例如拥有<input type="hidden" name="ipaddress" value="98.36.2.53">。您需要用户交互来发布来自,但这可能就足够了

  • 使用JavaScript访问服务器,执行POST请求并读取数据。当JavaScript在浏览器中运行时,很容易在网页上显示它(例如,使用jQuery的.html( htmlString )方法。