Java 有没有更简单/更好的方法来调用Web服务?

Java 有没有更简单/更好的方法来调用Web服务?,java,web-services,codenameone,Java,Web Services,Codenameone,每次我的移动应用程序需要访问数据库时,我都必须编写这段代码 //NetworkManager.getInstance().start(); ConnectionRequest request = new ConnectionRequest(); request.setUrl(WebConstants.HOST+"URL"); request.setPost(false); request.addArgument("x",y);

每次我的移动应用程序需要访问数据库时,我都必须编写这段代码

//NetworkManager.getInstance().start();
        ConnectionRequest request = new ConnectionRequest();
        request.setUrl(WebConstants.HOST+"URL");
        request.setPost(false);
        request.addArgument("x",y);
        request.addResponseListener(new ActionListener() {
            public void actionPerformed(ActionEvent evt) {
                NetworkEvent event = (NetworkEvent)evt;
                Exception error = event.getError();
                if(error != null) {
                    return;
                }
                ConnectionRequest request = event.getConnectionRequest();
                byte[] result = request.getResponseData();

                String response = new String(result);

                /** Process the string response **/

            }
        });
        NetworkManager.getInstance().addToQueue(request);

当web应用程序不断地访问DB,并且每次调用我都需要复制、粘贴和修改相同的代码时,这就变得非常乏味了。我试图创建一个方法并返回字符串响应,但由于web服务是异步完成的,因此调用web服务的方法必须在web服务方法处理响应之前完成。因此,我不能简化这部分代码。关于如何进行有什么想法吗

将代码封装在

/**处理字符串响应**/

然后,您可以创建一个调用

callable.call

您可以使用addToQueueAndWaitrequest,它会一直阻塞,直到网络操作完成,并且在EDT上使用它是完全安全的,因为它使用


您还可以使用类似的方法,将web调用封装在方法调用中。

谢谢,Shai。我使用了webservice向导,使代码更加健壮和可用。您需要调用show dialog方法,然后在之后处理该对话框。