Как генерировать класс Java, который реализует сериализуемый интерфейс от xsd, использующего JAXB?

PNG является 100%-й заменой для файлов GIF и поддерживается всеми веб-браузерами, с которыми Вы, вероятно, встретитесь.

существуют очень, очень немного ситуаций, где GIF был бы предпочтителен. Самый важный является анимацией - стандартная анимация поддержек GIF89a, и фактически каждый поддержка браузера это, но простой формат PNG не делает - необходимо было бы использовать MNG для этого, которое ограничило поддержку браузера.

Фактически все браузеры поддерживают одноразрядную прозрачность в файлах PNG (тип прозрачности, предлагаемой форматом GIF). Существует отсутствие поддержки в IE6 для полной 8-разрядной прозрачности PNG, но это может быть исправлено для большинства ситуаций небольшим волшебством CSS.

, Если Ваши файлы PNG выходят больше, чем эквивалентные файлы GIF, это почти наверняка, потому что Ваше исходное изображение имеет больше чем 256 цветов. Файлы GIF индексируются к максимальной палитре 256 цветов, в то время как файлы PNG в большинстве графических программ по умолчанию сохранены в 24-разрядном формате без потерь. Если размер файла более важен, чем точные цвета, сохраните файл как 8-разрядный индексируемый PNG, и это должно быть эквивалентно GIF или лучше.

возможно "взломать" файл GIF для имения больше чем 256 цветов с помощью комбинации кадров анимации с флагами do-not-replace и несколькими палитрами, но об этом подходе фактически забыли начиная с появления PNG.

45
задан JasonMArcher 16 July 2015 в 17:26
поделиться

1 ответ

Serializable

Используйте xjc: serializable в файле пользовательских привязок, чтобы добавить java.io.Serializable интерфейс для ваших классов вместе с serialVersionUID :

<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb"
            xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
            xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
            xsi:schemaLocation="
http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
version="2.1">
  <globalBindings>
    <serializable uid="1" />
  </globalBindings>
</bindings> 

toString ()

Используйте суперкласс (см. xjc: superClass ), от которого будут унаследованы все ваши связанные классы. Этот класс не будет генерироваться xjc, поэтому вы можете создавать его по своему усмотрению (здесь с реализацией toString () ):

<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb"
                xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
                xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
                xsi:schemaLocation="
http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
    version="2.1">
    <globalBindings>
        <serializable uid="1" />
        <xjc:superClass name="the.package.to.my.XmlSuperClass" />
    </globalBindings>
</bindings>
76
ответ дан 26 November 2019 в 21:11
поделиться
Другие вопросы по тегам:

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