Существует ли стандартный способ передачи разных типов данных в разное время по TCP-соединению в Java? - PullRequest
1 голос
/ 20 октября 2010

Это вопрос концептуального программирования. Я пишу tcp сервер / клиентская программа на Java.

Клиентская программа будет получать несколько типов данных, и я пытаюсь выяснить, как правильно определить, какой тип данных отправляется (в противном случае я мог бы попытаться преобразовать число в пользовательский тип данных или наоборот).

Я думал об упреждении любой передачи данных строковым символом, чтобы предупредить клиентскую программу о том, какой тип данных она будет получать.

Это допустимый метод передачи данных? Это кажется довольно неуклюжим.

Есть ли лучший способ передачи разных типов данных в разное время?

Ответы [ 2 ]

1 голос
/ 20 октября 2010

Общий способ справиться с этим - создать тип сообщения, который включает в себя заголовок и полезную нагрузку. Заголовок должен содержать достаточно информации для принимающей стороны, чтобы определить, какова полезная нагрузка, чтобы он знал, как преобразовать ее обратно в реальный объект, или набор данных, или что бы вы ни отправляли. В вашем случае указанным символом строки может быть заголовок.

0 голосов
/ 20 октября 2010

О, есть много стандартных способов.Это замечательная вещь в стандартах - есть так много выбора.

В этом конкретном случае вы можете захотеть взглянуть на DataOutputStream и DataInputStream в пакете java.io.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...