Как я могу получить HTML-контент с определенного URL-адреса на стороне сервера с помощью Java?
-
06-07-2019 - |
Вопрос
Я разрабатываю приложение, которому необходимо загружать HTML-контент с определенного URL-адреса на стороне сервера с помощью Java.Как я могу это решить?
С уважением,
Решение
Для этого я использовал библиотеку Apache Commons HttpClient.Посмотрите здесь:http://hc.apache.org/httpclient-3.x/tutorial.html
Он более функционален, чем поддержка HTTP-клиента JDK.
Другие советы
Если все, что вам нужно, это прочитать URL-адрес, вам не нужно прибегать к сторонним библиотекам, в Java имеется встроенная поддержка для получения 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();
}
}
Если бы это был php, вы могли бы использовать КУЛЬ, но поскольку это Java, вы должны использовать HttpURLСоединение, как я только что узнал по этому вопросу:
импортировать java.io.BufferedReader;импортировать java.io.IOException;импортировать java.io.InputStreamReader;импортировать java.net.MalformedURLException;импортировать java.net.URL;импортировать java.net.URLConnection;
открытый класс urlconetent {public static void main (string [] args) {
URL url;
try {
// get URL content
String a="http://localhost:8080//TestWeb/index.jsp";
url = new URL(a);
URLConnection conn = url.openConnection();
// open the stream and put it into BufferedReader
BufferedReader br = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
String inputLine;
while ((inputLine = br.readLine()) != null) {
System.out.println(inputLine);
}
br.close();
System.out.println("Done");
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}