Как заставить сгенерированные классы содержать Javadoc из документации XML-схемы

Попробуйте следующее, это нейтрально в отношении поставщика:

select
    'null    ' as type,
    count(*)   as quant
    from       tbl
    where      tmstmp is null
union all
select
    'not null' as type,
    count(*)   as quant
    from       tbl
    where      tmstmp is not null

После наличия нашего локального гуру DB2 смотрят на это, он соглашается: ни одно из решений, представленных до настоящего времени (включая этого), не может избежать полного сканирования таблицы (таблицы, если метка времени не индексируется, или indexotherwise). Они все сканируют каждую запись в таблице точно однажды.

Весь CASE/IF/NVL2 () решения делают пустой указатель к преобразованию строк для каждой строки, представляя ненужную нагрузку на DBMS. Это решение не имеет той проблемы.

43
задан Joachim Sauer 30 October 2009 в 17:18
поделиться

2 ответа

Мне никогда не удавалось получить обычную xsd: documentation для размещения в исходном коде Java, кроме , если и только если это был Комплекс Тип. Документация по элементам, простым типам, и т. д. игнорируются.

Итак, я использую jxb: javadoc . Для этого включите определение xmlns: jxb = "http://java.sun.com/xml/ns/jaxb" в свой элемент .

Добавьте дочерний элемент к или или :

<xsd:annotation><xsd:appinfo><jxb:XXX><jxb:javadoc>
  This is my comment for a class/property
</jxb:javadoc></jxb:XXX></xsd:appinfo></xsd:annotation>

Где XXX либо "класс" или "свойство".

Для пакета, который вы пишете дочерним по отношению к xsd: schema

<xsd:annotation><xsd:appinfo><jxb:schemaBindings><jxb:package name="com.acme"><jxb:javadoc>
  This is my comment for a package
</jxb:javadoc></jxb:package></jxb:schemaBindings></xsd:appinfo></xsd:annotation>

Запись HTML-документа требует заключения в скобки с помощью

(РЕДАКТИРОВАТЬ: при написании моего ответа вопрос был отредактирован OP, поэтому я обновляю его соответствующим образом)

В моем случае javadoc был единственной целью, поэтому было приемлемо использовать jxb: javadoc . Но ваше обновление имеет смысл и, на самом деле, Я полностью согласен с тобой. К сожалению, я так и не нашел идеального решения для описываемой вами ситуации (поэтому я буду очень внимательно следить за этим вопросом). Возможно, вы могли бы использовать что-то вроде xframe для создания документации из xsd: documentation , но это не отвечает на вопрос.

35
ответ дан 26 November 2019 в 23:06
поделиться

Это невозможно с эталонной реализацией JAXB. Даже если вы попытаетесь написать плагин XJC, вы обнаружите, что API плагина не содержит ссылки на определение схемы, поэтому нет никакого способа извлечь эту информацию.

Наша единственная надежда состоит в том, что будущая версия JAXB исправляет ситуацию. Здесь есть запрос открытой функции .

12
ответ дан 26 November 2019 в 23:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: