Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使Java Swing桌面应用程序与服务器通信?_Java - Fatal编程技术网

如何使Java Swing桌面应用程序与服务器通信?

如何使Java Swing桌面应用程序与服务器通信?,java,Java,ex)通过服务器验证桌面应用程序上的用户 关于服务器的问题:我必须使用Tomcat吗?还有其他解决办法吗?我甚至可以使用Apache吗?您需要在Java应用程序中使用某种方式来下载特定URL处的页面 URL url; InputStream is = null; DataInputStream dis; String line; try { url = new URL("https://stackoverflow.com/"); is = url.openStream();

ex)通过服务器验证桌面应用程序上的用户


关于服务器的问题:我必须使用Tomcat吗?还有其他解决办法吗?我甚至可以使用Apache吗?

您需要在Java应用程序中使用某种方式来下载特定URL处的页面

URL url;
InputStream is = null;
DataInputStream dis;
String line;

try {
    url = new URL("https://stackoverflow.com/");
    is = url.openStream();  // throws an IOException
    dis = new DataInputStream(new BufferedInputStream(is));

    while ((line = dis.readLine()) != null) {
        System.out.println(line);
    }
} catch (MalformedURLException mue) {
     mue.printStackTrace();
} catch (IOException ioe) {
     ioe.printStackTrace();
} finally {
    try {
        is.close();
    } catch (IOException ioe) {
        // nothing to see here
    }
}
(摘自)

之后,在我看来,任何接受带有参数的URL的web服务器都可以工作,服务器上有一个脚本(任何语言)来接受请求。您只需要一个响应,并在服务器上维护会话


示例:将返回一个页面,说明操作是否成功,您将对此进行分析。

有多种方法可以处理它:

  • 使用普通套接字连接进行通信。看看java.net包。

  • 使用web服务并提交数据,类似于REST服务

  • 这些可以用您自己的服务器实现,比如tomcat、apache、glassfish、jboss等等。。。。选项太多,无法命名


    本质上,您需要在服务器上的预定义端口上侦听某些内容,这可以是上述任何一种。您的swing应用程序还可以使用上述API与服务器进行来回通信。如果你发布更多关于你要做的事情的细节,你可能会得到一些更具体的建议。

    对不起,为什么我被修改了?我只是给出了允许桌面应用程序与服务器通信的最简单方法。+1 HTTP定义良好,问题没有提到任何排除它的因素。但是,如果我们使用Java Swing(而不是web应用程序),那么如何发布表单呢?您可以尝试将表单元素名称/值附加到URL,包括“提交”按钮名称和任何值(因此它解析为True)。格式如下: