У меня есть Java-приложение, которое имеет прослушиватель сокетов и прослушивает события TCP через определенный порт, скажем, 6500. Когда данные получены, они типизируют их на конкретный объект Java - EventObj, который имеет определенные поля.Например - EventObj.java
public class EventObj {
private String firstName;
private String lastName ;
// setters and getters
}
Вот фрагмент кода, который получает данные через сокет и типизирует их EventObj -
Socket clientSocket = null;
while (keepRunning) {
try {
clientSocket = null;
//wait for an incoming call
clientSocket = serverSocket.accept();
} catch (IOException e) {
// log error
}
if(clientSocket == null){
continue;
}
ObjectOutputStream objectOutputStream = null;
ObjectInputStream objectInputStream = null;
EventObj event = null;
try{
objectInputStream = new
ObjectInputStream(clientSocket.getInputStream());
objectOutputStream = new ObjectOutputStream(clientSocket.getOutputStream());
event = (EventObj) objectInputStream.readObject();
/// other parts of the code
}
//// other parts of the code
}
Если бы мне нужно было отправить сообщение черезсоединение с сокетом из Python, как я могу создать экземпляр EventObj в Python и отправить его в мое приложение Java, чтобы сериализация не завершилась.
Вот мой код Python -
#!/usr/bin/env python
import socket
HOST = "localhost"
PORT = 6502
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((HOST, PORT))
sock.sendall("I NEED TO SEND MY SERIALIZED OBJECT SO JAVA UNDERSTANDS IT")
Любой совет?