Вопрос:Vaadin компонентов, как Spring фасоли
Когда Vaadin компонент может быть фасоли весной контейнера (@SpringComponent
аннотаций)?
Вопрос уточнение:
Я задаю этот вопрос, потому что я знаю, что Vaadin View может быть пружинный боб после использования @SpringView
. Но если я комментирую Button
компонент с @SpringComponent
, он будет создан только один раз. Может ли это возникнуть проблема?
Пример:
У меня есть много JpaRepository фасоли:
public interface CustomerRepository extends JpaRepository<Customer, Long>
// ...
public interface UserRepository extends JpaRepository<User, Long> {
// ...
И я хочу использовать их в разных местах - например, в качестве компонента Tab (в Vaadin Tabsheet). Поэтому у меня есть идея - tabContent
может быть также рессоры:
@SpringView(name = "viewName")
public class SomeView extends VerticalLayout implements View {
@Autowired
private SomeTabContent tabContent;
//...
public void init() { // call every view enter()
removeAllComponents();
// Initialize whole view.
tabSheet.addTab(tabContent, /* ... */);
// ...
}
И тогда я могу вводить все необходимые бобы:
@SpringComponent
public class SomeTabContent extends VerticalLayout {
@Autowired
private CustomerRepository customerRepository;
@Autowired
private UserRepository UserRepository;
}
ли это правильная архитектура?
Примечание: Я знаю, что у Vaadin есть функции CDI и Data Binding, но я не хочу их использовать. Я также знаю, что я мог вручную создать контекст приложения Spring в любом месте, но я думаю, что это не правильно.