如何从Java代码调用servlet

如何从Java代码调用servlet,java,servlets,Java,Servlets,我想用一些参数调用servlet并接收响应。代码是用Java编写的。 最好(最干净)的方法是什么 另外,我是否可以调用servlet并在不等待servlet完成的情况下继续执行代码(关闭连接并“忘记它”) 从您的角度来看,servlet只是某个服务器上的URL。至于不等待响应,请阅读Java线程。但是您不能在不等待servlet完成的情况下关闭HTTP连接,因为这可能会导致servlet失败。只需在一个单独的线程中等待响应,如果不重要,则丢弃它。最好使用ApacheHttpClient API来

我想用一些参数调用servlet并接收响应。代码是用Java编写的。 最好(最干净)的方法是什么

另外,我是否可以调用servlet并在不等待servlet完成的情况下继续执行代码(关闭连接并“忘记它”)


从您的角度来看,servlet只是某个服务器上的URL。至于不等待响应,请阅读Java线程。但是您不能在不等待servlet完成的情况下关闭HTTP连接,因为这可能会导致servlet失败。只需在一个单独的线程中等待响应,如果不重要,则丢弃它。

最好使用ApacheHttpClient API来处理和与servlet通信

特点:

  • Param很容易传递和解析响应
  • 它甚至允许通过代理进行通信
  • 开源
  • 它还支持异步 还有更多 请参考以上网址

  • 您可以使用ApacheHttpClient

    它还具有非阻塞I/O功能

    下面是Apache HttpComponents的一个示例


    你也可以试试,或者

    对我来说,这是一个最短、最有用的关于英语的教程

    如果要继续处理应用程序的其他部分,可以将请求拆分为单独的
    线程。另请参见:“做这件事的最佳(最干净)方法是什么”最佳或最干净的意思是什么。我是否必须等待响应(如果解决方案使用线程,那么答案仍然是肯定的-我必须等待回答)。向servlet传递参数怎么样?我是不是必须自己(用“?”和“&”)对这个url进行欺骗,或者有一种更干净的方法?我真的不喜欢那些不加评论就投否决票的人。这是一个平衡力量的投票。
    
    import java.net.*;
    import java.io.*;
    
    public class URLConnectionReader {
      public static void main(String[] args) throws Exception {
        URL yahoo = new URL("http://www.yahoo.com/");
        URLConnection yc = yahoo.openConnection();
        BufferedReader in = new BufferedReader(
                                new InputStreamReader(
                                yc.getInputStream()));
        String inputLine;
    
        while ((inputLine = in.readLine()) != null) 
            System.out.println(inputLine);
        in.close();
      }
    }