Java http帖子相关问题

时间:2011-04-14 16:00:02

标签: java http

我有一段代码必须指示我的servlet进行一些处理。我的代码不期望从servlet中获得任何回报。它的工作是通知servlet servlet需要做一些处理。需要处理的内容,需要处理的内容是URL的一部分,例如: http://myserver:port/myservlet/something.do?param1=param1value&param2=param2value ...

但我不希望我的代码等待来自servlet的任何响应。我的代码应继续前进。目前我看到我的代码发出一个请求然后等待,直到servlet发送响应,然后转到发出下一个http post请求。多线程是一种选择,但除此之外还有其他选择吗?

1 个答案:

答案 0 :(得分:5)

对servlet的调用是阻塞的。除了在单独的线程中运行该进程之外,您无能为力。例如:

ExecutorService executor = Executors.newSingleThreadExecutor();
// NON BLOCKING CALL
executor.submit(new Runnable() {
                @Override
                public void run() {

                    callTheServlet();
                }
            });
executor.shutdown();