Серверное программное обеспечение, с которым мой клиент взаимодействует, регулярно отправляет сообщения транзакций на порт 4000. Мне нужно печатать эти сообщения в консоли по очереди. (В конце концов мне придется записывать эти значения в таблицу, но Im сохраняет это для более поздних версий.)
Я пробовал этот код, но он ничего не выводит:
package merchanttransaction;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.lang.ClassNotFoundException;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
public class MerchantTransaction {
public static void main(String[] args) {
try {
InetAddress host = InetAddress.getLocalHost();
Socket socket = new Socket("192.168.1.104", 4000);
ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
String message = (String) ois.readObject();
System.out.println("Message: " + message);
ois.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
Кстати, мне нужно контролировать этот порт, пока программа не завершится. Я не уверен, что код выше сможет это сделать, потому что я не вижу никакой итерации кода.
Im с использованием Java версии 1.6.0_24, среды выполнения SE (build 1.6.0_24-b07), запущенной на Ubuntu.