![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Вопрос состоит в следующем: мне необходимо сохранять много текстовой инфрмации (ну это своего рода различные настройки приложения ) так как луче сделать сохранять их в XML или обычном текстовом файле. Дело в том что эти настройки в дальнеёшем можно будет открывать и использовать в 2-ом приложении (это приложение может быть написано на 2-ом языке). ?
И на этой почве ещё один вопрос как в Java обстоит работа с XML и файлами? |
|||
|
||||
| _Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 5 Всего: 34 |
Ну это по вкусу.
С XML в Java обстоит хорошо. Единственно, ИМХО, не стоит использовать dom классы, которые она предлагает по умолчанию. Лучше взять jar с dom4 (У меня dom4j-1.6.1.jar но может есть версия и новее). Но это, естественно, если собираетесь работать с DOM. -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
| Reptor |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
_Y_, а где есть документация желательно на русском по работе JAVA + XML
где можно скачать эту библиотеку.
Не совсем понял а без Dom это что имеется ввиду? |
||||
|
|||||
| jManiak |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 6.2.2007 Где: Санкт-Петербург Репутация: нет Всего: 1 |
java.util.Properties
|
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 31 Всего: 132 |
||||
|
||||
| _Y_ |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 5 Всего: 34 |
Не знаю. Доки, но они на английском. Может Googl поможет?
http://www.dom4j.org
XML может обрабатываться как единый документ (модель DOM), а может - посредством генерации событий (модель SAX). В поледнем случае можно работать с документами любого размера - в памяти все равно они не остаются. Это не только в Java, но и в других языках - две модели на выбор. Но я работал только с DOM. Добавлено @ 16:30
Вряд-ли годиться, т.к. ему надо использовать те же установки программами, написанными на других языках. Это сообщение отредактировал(а) _Y_ - 12.9.2007, 16:31 -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
||||||||||
|
|||||||||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Ну и всётаки что луче по вашему DOM или SAX?
|
|||
|
||||
| _Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 5 Всего: 34 |
Что лучше, кошка или собака? Я бы сказал, что для небольших количеств информации удобнее DOM, но если ее столько, что памяти жалко, то только SAX. -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
а вот если я поработал с DOM забрал все данные которые мне необходимы то память почле этого же освобождается?
|
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 17 Всего: 43 |
Со временем gc очистит память. Мы пробуем сейчас сохранять свойства программы в xml с помощью java.bean.XMLEncoder/Decoder. При закрытии программы создается обьект, хранящий текущие параметры программы. С помощью анкодера предполагаем получать xml, который сохраняется на сервере. При старте программы xml загружается в программу и с помощью декодера восстанавливается обьект установок. XML предпочли потому, что параметров очень много. В использованием Preferences не устроило то, что свойства пишутся в регистр и приложение (JNLP) должно иметь соответствующие права. Такой подход годится только для использования одним приложением. Это сообщение отредактировал(а) COVD - 12.9.2007, 18:31 |
|||
|
||||
| Tony |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1159 Регистрация: 3.3.2006 Где: Riga Репутация: нет Всего: 12 |
классы XMLEncoder i XMLDecoder из java.util.
|
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 17 Всего: 43 |
точнее, в java.beans
|
|||
|
||||
| _Michael |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 23.6.2007 Где: з полонини Репутация: 2 Всего: 6 |
А если с SAX работать то память не gc освобождает? также со временем? Добавлено через 2 минуты и 56 секунд Tony, у меня JDK 1.5 и в java.util нет етих классов. Но зато они есть в java.beans -------------------- ...не убивайся ни о чем - все временно, хоть ночь темна но светлым днем беременна... Саади |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 17 Всего: 43 |
DOM загружает в память сразу весь xml документ, потом начинает его парсировать. Может так случиться, что памяти не хватит, чтобы весь документ загрузить.
SAX загружает кусочек документа, парсирует его и освобождает, потом загружает следующий кусочек, снова парсирует и освобождает, ... В обоих случаях gc будет чистить память, но легче ему будет с SAX, т.к. загружаемые порции более мелкие. |
|||
|
||||
| y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 5 Всего: 13 |
если надо редактировать дерево в коде - DOM. если нет - то SAX. все просто... -------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |