![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
ci5 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 24.12.2008 Репутация: нет Всего: нет |
Здравствуйте! Есть задание написать Клиент-серверное приложение с параллельной обработкой запросов с использованием сокетов.
База данных это 2 файла: информация по отделам (начальник и отдел) и файл с отделами, в котором информация о нем(ФИО, отдел, телефон, зарплата). Вот некоторые вопросы по заданию 1. Как лучше хранить данные ? Допустим отделов у нас не так много, штук 10 и сами они не много информации содержат. Это будет 2 XML файла ? Или на каждый отдел делать лучше свой XML файл ? 2. SAX или DOM ? SAX единственный раз может изменять данные, при своем проходе по данным. Может в этот момент все данные загрузить в какой-нибудь массив и вывести в таблицу, после чего перезаписывать данные по окончанию работы ? Или лучше DOM тут использовать для работы с XML ? Но он жрет память на сколько знаю много. Я не мало смыслю пока в XML, так что сильно не пинайте. Хотя нет, разве что на материал, было бы здорово. 3. Как можно реализовать работу 2-х клиентов в один момент ? Чтобы один к примеру открыл для изменения файл, а второму указали что с файлом работают и предоставили доступ только для чтения. Возможно ли вообще так сделать ? Ведь мы загрузили данные и работаем по сути с их копией, а основной файл получается уже будет закрыт. Как вариант который пришел в голову, это находить хэш всего отдела и сравнивать. 4. Работа с данными: думаю использовать 2 коллекции, это LinkedList для информации о отделе и какой-нибудь MAP, к примеру LinkedHashMap. Или что-то есть более лучшее в коллекциях для этого дела ? идентификатор наверняка должен быть уникальным в MAP. Заранее спасибо |
|||
|
||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Я бы так сделал:
1. База данных 2. Jersey + JaxB 3. База данных / помечать записи как "read-only" (и передавать эту информацию), снимать галочку по окончанию работы / по таймауту 4. Да, hashMap - удобное решение в качестве индекса, а обьекты так и хранить, как JaxB |
|||
|
||||
ci5 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 24.12.2008 Репутация: нет Всего: нет |
Извиняюсь, забыл указать, что пока что не предусмотрено использовать какие-либо базы данных для хранения. Либо txt либо xml.
|
|||
|
||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Тогда наверное два файла или даже в одном всё. А вообще XML базы данных, конечно, для этого следовало бы применять.
И на сервере тогда вообще можно массив (HashMap) JaxB обьектов в памяти хранить. И лочить каждый обьект при его запросе. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |