Как работать с пустым конструктором с окончательными полями - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть такой класс

 public class Test {

  private String m_username;

  public Test() {}

  public Test(String username) {
      m_username = username;
   }
}

И с Мокси. Я могу опубликовать этот POJO в другом API с помощью клиента Джерси без какой-либо операции преобразования. Но мне нужно установить m_username в качестве конечного поля, и для инициализации m_username потребуется пустой конструктор. А также Мокси не работает. Как я могу это исправить?

1 Ответ

0 голосов
/ 07 ноября 2018

Вопрос не очень хорошо задан. Насколько я понимаю:

  • Вы должны сделать свое поле финальным
  • Вы должны оставить пустой конструктор, потому что ваш объект автоматически сериализуется / десериализуется в формате, таком как JSON, с использованием библиотеки, такой как вы можете найти в Spring

К сожалению, эти два ограничения нельзя удерживать одновременно. Вам нужно будет отказаться от final, если вы хотите оставить пустой конструктор, и наоборот.

...