小编Rol*_*das的帖子

如何从HttpURLConnection切换到HttpClient

这是我的第一个问题,请耐心等待.

我有一个Swing应用程序,它通过HttpURLConnection从服务器获取XML格式的数据.现在我正在尝试与服务器创建一个持续的请求 - 响应连接,以检查应用程序是否有任何更新(因为检查必须定期和经常(每隔一秒左右)).

在一些问题的评论中,我读到最好使用Apache HttpClient而不是HttpURLConnection来维护实时连接,但我找不到任何好的例子如何从我当前的代码转到使用HttpClient的代码.具体来说,使用什么而不是HttpURLConnection.setRequestProperty()和HttpURLConnection.getOutputStream()?

Document request = new Document(xmlElement);
Document response = new Document();

String server = getServerURL(datasetName);
try {
  URL url = new URL(server);
  try {
    HttpURLConnection connection = (HttpURLConnection)url.openConnection();
    connection.setRequestProperty("Content-Type","application/xml; charset=ISO-8859-1");
    connection.setDoOutput(true);
    connection.setDoInput(true);
    connection.setRequestMethod("POST");
    OutputStream output = connection.getOutputStream();

    XMLOutputter serializer = new XMLOutputter();
    serializer.output(request, output);

    output.flush();
    output.close();

    InputStream input = connection.getInputStream();
    String tempString = ErrOut.printToString(input);

    SAXBuilder parser = new SAXBuilder();
    try {
      response = parser.build(new StringReader(tempString));
    }
    catch (JDOMException ex) { ... }
    input.close();
    connection.disconnect();
  } …
Run Code Online (Sandbox Code Playgroud)

java httpclient httpurlconnection

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

httpclient ×1

httpurlconnection ×1

java ×1