Я и группа друзей работаем над проектом на Java, и нам нужна помощь в отправке объектов через сокеты.
До сих пор мы добились отправки простых объектов (целых, строк и прочего) через сокеты, используя ObjectOutputStream
и ObjectInputStream
. Однако сегодня мы столкнулись с огромной проблемой (во всяком случае, для нас огромной ^^)
У нас есть древовидная структура, которую нам нужно отправить с одного ПК на другой. Проблема в том, что в каждом узле этого дерева у нас есть ссылка на BufferedImage, и его нельзя сериализовать.
Сегодня мы много исследовали и обнаружили, что можем использовать ImageIO.write()
для отправки одного BufferedImage через OutputStream сокета, однако для нас это бесполезно, так как нам не нужно отправлять BufferedImage сам по себе, а целое дерево, где он находится.
Что нам нужно, так это способ (если он существует) сериализовать каждый BufferedImage, преобразовать его в другой класс, если это необходимо, при создании дерева и иметь каждый узел дерева вместо ссылки на этот новый сериализуемый класс, чтобы дерево можно было отправить как целый объект...
Мы действительно не заботимся о производительности, поскольку деревья, которые мы отправляем, не такие уж большие (максимум 10-15 узлов). Заранее спасибо за помощь, извините за паршивый английский. О, и это для... ну, своего рода домашнее задание, если вы хотите иметь это в виду :-)
Спасибо!!