Использование вспомогательного класса для удобства работы с JavaBeans - это своего рода идиома? - PullRequest
0 голосов
/ 13 ноября 2011

На работе мне часто приходится иметь дело со сторонними библиотеками, которые интенсивно используют JavaBeans.Поскольку работа с JavaBeans (особенно создание) очень утомительна и нарушает режим «сухой» (много репликации), я часто пишу вспомогательный класс, чтобы иметь возможность создавать JavaBeans более «oo-like» (т.е. передавать всю необходимую информацию в конструктор), что-то вроде этого

// left out the implementation of the method, just to give an idea
public class MyBean {
  public MyBean();

  public void setFoo(String foo);
  public void setBar(String bar);
}

public MyBeans {
  public static MyBean newMyBean(String foo, String bar);
}

Теперь, используя статический импорт, я могу:

MyBean bean = newMyBean(foo, bar);

Вместо:

MyBean bean = new MyBean();
bean.setFoo(foo);
bean.setBar(bar);

Это какой-тоидиома, есть ли минусы (я знаю, статический импорт довольно противоречив), и есть ли плагины Maven, которые могут генерировать эти вспомогательные классы для меня?

1 Ответ

1 голос
/ 13 ноября 2011

Я не знаю ни одного плагина Maven, который бы создавал эти фабрики для вас, но это простая библиотека генерации кода. Он должен быть настраиваемым для создания различных фабрик с данным классом, какие свойства вы хотите установить, но должен учитывать специфику класса.

Из-за потребностей в конфигурации (как я понимаю, во всяком случае) я никогда не задумывался над тем, чтобы обернуть свои реализации в плагин Maven. Я создаю их вручную (вместе с текучими параметрами интерфейса) и больше никогда не думаю о них.

ИМО, они обычно требуют вмешательства человека, поэтому не стоит Mavenizing процесс. Просто сгенерируйте их в обычное дерево src/main/java и представьте, что вы написали их сами.

...