Цитата:
Сообщение от caseyryan
....Сразу скажу, что эта задача на джаве не решается в 5 - 10 строк, и даже в 100....
|
В таком случае, вы должны понимать мои затруднения. Тем более, когда пытаешься разобраться во всем сам. К сожалению, найти какой-нибудь мануал который покажет именно то, что тебе нужно, да и всё объяснит — весьма нелегко, а то и невозможно.
Вот моя реализация сервера:
- Для чтения данных из сокетов использую InputStreamReader + BufferedReader;
- Далее, данные из буфера передаю в стороковую переменную (метод readLine());
- Создаю Document в который считываю байты и парсю эту самую строковую переменную;
- В переменную типа Element извлекаю из документа элемент;
- Потом, к примеру, могу у элемента извлечь название тэга методом getTagName(); что уже позволит мне передать элемент в нужную цепочку к дальнейшей обработке (извлечения значений атрибутов).
Добавлю, что передаваемый xml файл очень простой, предположительно всего один тэг с атрибутами.
Тэг служит пунктом назначения (то есть в какую цепочку отправить), а атрибуты уже содержат данные необходимые для обработки.
Следственно... Конкретизируя мой вопрос:
- Правильные ли я выбрал стримы-ридеры? Если нет, то какие лучше и почему? (я немного запутался в этом вопросе)
- Приемлемый ли выбор принимать данные в строку, а потом преобразоть её в документ? Есть ли возможность передавать данные сразу в документ (соответственно отпарсив); быстрее ли будет обработка данных?
- Всё-таки, DOM или SAX? (хотя лично, SAX ещё не пробовал).
- Эффективный ли данный метод в общем(для данной задачи), да в эффективности обработки данных и простоте реализации в частности? Или есть лучше? Почему? Как правильно реализовать?
P.S.: на джава-талке так никто и не ответил.
