Я новичок в калитке.Это может быть просто мое незнание жизненного цикла калитки, поэтому, пожалуйста, просветите меня!Насколько я понимаю, объекты Wicket WebPage
создаются один раз, а затем сериализуются.Это привело меня в замешательство, см. Ниже.
В настоящее время у меня есть шаблонный класс, который я намерен подклассировать.Я следовал примеру в документах Wicket, демонстрирующим, как переопределить поведение шаблона в подклассе:
protected void onBeforeRender() {
add(new Label("title", getTitle()));
super.onBeforeRender();
}
protected String getTitle() {
return "template";
}
Подкласс:
protected String getTitle() {
return "Home";
}
Это работает очень хорошо.Что мне не понятно, так это «лучшие практики» для этого.Кажется, что onBeforeRender()
вызывается при каждом запросе страницы, нет?Кажется, что на странице было бы значительно больше обработки, если бы все было в onBeforeRender()
.Я мог бы легко последовать примеру других примеров Wicket и добавить некоторые компоненты в конструктор, которые я не хочу переопределять, но затем я разделил логику компонентов на два места, что я не решаюсь делать.
Если я добавлю компонент, который должен быть во всех подклассах, я должен добавить его в конструктор или onBeforeRender()
?