[room] Лекция по Java

Eugene Prokopiev =?iso-8859-1?q?prokopiev_=CE=C1_stc=2Edonpac=2Eru?=
Пн Фев 26 01:10:35 MSK 2007


Денис Смирнов пишет:
> On Thu, Oct 26, 2006 at 12:05:32PM +0400, Eugene Prokopiev wrote:
> 
> 
>>>XML мегарулез, когда применяется там где надо. Но тот кто сказал что он
>>>предназначен чтобы парсить глазками нагло соврал, мои глазки такое парсить
>>>не могут.
> 
> EP> На это я ответил ...
> EP> Могу добавить, что моим глазам конфиг на xml парсить легче конфига, ну 
> EP> скажем, postfix :) Разумеется, при наличии нормальных отступов для 
> EP> отображения древовидной структуры. А если редактор раскрашивает xml, то 
> EP> вообще все в шоколаде :)
> 
> Моими глазами удобнее всего парсить windows ini-like конфиги :) Те что
> секции разделают [вот-так], а внутри секций присваивания. Опять же, смотря
> какие конфиги.

мне обычно не хватает 2 уровней ;)

> А xml если читать более-менее, то писать нервов не хватает.
> 
> 
>>>У... Хотя пользу понимаю -- можно легко конфиг и скриптами править.
> 
> EP> Вот-вот. При этом не сильно уродуя его с точки зрения визуального 
> EP> восприятия.
> 
> Ну это я и с обычными конфигами писал. Тот код, что я постил недавно был
> по твоему ручками сгенерирован? Не-а. Из PHP-кода который я до этого писал
> автоматически сгенерирован. Ага, я псих. Причем конвертация работает в
> обе стороны -- из конфига в PHP, и наоборот. Причем diff на оригинал и
> результат двойного конвертирования молчит как партизан на допросе. Я так
> свой компилятор тестирую :)

если бы все были такими же отважными, может XML и правда был бы не нужен  :)

хотя он настолько оброс всевозможными технологиями (например, я иногда 
не представляю себе, что бы я делал без XPath, этот молоток я даже к 
JavaBeans применял - см. JXPath), что назад дороги нет ...

>>>Кстати, что сейчас модно для скриптования как раз изменения XML? xsltproc
>>>какой?
> 
> EP> Изменение - это, скорее всего, DOM. Для DOM в Java лучше всего dom4j, 
> EP> чуть хуже jdom - но это с моей колокольни. Есть в Java стандартное и 
> EP> несколько замороченное API, с которым все стараются быть совместимыми - 
> EP> JAXP. Далее по возрастанию уровня абстракции: XStream -> 
> EP> JAXB/XMLBeans/Castor/...
> EP> Hibernate теперь уже не только ORM (БД <-> JavaBeans), но и БД <-> DOM. 
> EP> Castor вроде всегда умел ...
> 
> А SAX?

JAXP - универсальный интерфейс к различным анализаторам, как минимум 
один из которых идет в комплекте c JRE (как и сам JAXP, а с Java 6, 
кажется, идет в комплекте и JAXB).

-- 
С уважением, Прокопьев Евгений



Подробная информация о списке рассылки smoke-room