2009-12-01 100 views
1

爲現有的GWT項目編寫一些額外的類。我需要:從Java調用Web服務/網站

  • 請求的URL
  • 閱讀網頁中返回,以執行操作。

返回的頁面是非常簡單的HTML,因此解析它不應該很困難,我只需要首先獲取數據。

如何在Java中執行此操作?我最看好哪些軟件包?

+0

你是否需要在客戶端或服務器端發生這種情況? – Bozho 2009-12-01 11:04:50

回答

6

使用本機Java API,您可以使用java.net.URLConnection從URL讀取。這裏有一個簡單的例子:

URL url = new URL("http://www.stackoverflow.com"); 
URLConnection urlConnection = url.openConnection(); 
InputStream result = urlConnection.getInputStream(); 

BufferedReader reader = new BufferedReader(new InputStreamReader(result)); 
String line = null; 
while ((line = reader.readLine()) != null) { 
    System.out.println(line); 
} 
reader.close(); 

你可以喂InputStream你的口味的任何DOM/SAX解析器。平均分析程序可以直接使用(作爲參數)InputStreamJTidy是更好的HTML解析器之一。

爲了方便起見,這裏是一個速記直接從URL得到InputStream

InputStream result = new URL("http://www.stackoverflow.com").openStream(); 
0

HttpClient雖然非常好,但被認爲是過時的。 HttpComponents是一種替代方案。