Post con tag Web e Network
Host Lookup in Java
27 apr
La creazione di un utility che converte un hostname in un indirizzo IP e viceversa può essere decisamente semplice, utilizzando la classe java.net.InetAddress.
In particolare, il programma accetterà un hostname o un IP come argomento (quale dei due sia stato passato viene deciso con una funzione che sfrutta le espressioni regolari, e quindi le classi Pattern e Matcher) e lo trasformerà di conseguenza.
Echo Server in Java
25 apr
Il codice che segue implementa un semplice Echo Server in Java.
Il programma crea un ServerSocket che resta in attesa di una connessione. Quando riceve una connessione in ingresso, legge i dati in ingresso fino al loro termine o fino a quando non viene incontrato il carattere di newline, ed effettua l’echo.
Il server si limita a ricevere, rispondere e chiudere la connessione, senza rimanere in attesa di ulteriori input.
Rappresentazione di un indirizzo IP in Java
24 apr
In Java, un indirizzo IP (sia IPv4 che IPv6) è rappresentato come un oggetto di classe java.net.InetAddress che, solitamente, contiene sia l’hostname che l’indirizzo IP.
La classe InetAddress non ha costruttori pubblici quindi la creazione di un’istanza di tale classe è affidata a diversi metodi statici:
// determina l'IP dell'indirizzo dell'host specificato static InetAddress getByName(String host) throws UnknownHostException // determina tutti gli IP dell'indirizzo dell'host specificato static InetAddress[] getAllByName(String host) throws UnknownHostException // ricava un InetAddress dall'indirizzo IP specificato static InetAddress getByAddress(byte[] addr) throws UnknownHostException // ricava un InetAddress dal nome dell'host e dall'IP specificato static InetAddress getByAddress(String host, byte[] addr) throws UnknownHostException // ritorna l'host locale static InetAddress getLocalHost() throws UnknownHostException
Gestire gli URL in Java
22 apr
In Java, un URL (Uniform Resource Locator) è gestito utilizzando la classe java.net.URL.
Il vantaggio di utilizzare una classe specializzata rispetto ad una semplice stringa è che, in realtà, un URL è composto da più componenti, come ad esempio l’host, la porta, la stringa di query ecc.
Tale classe permette di accedere a questi componenti utilizzando gli appositi metodi getter