Метод Init в контроллере Spring (версия аннотации)



Я конвертирую контроллер в более новую версию аннотации. В старой версии я использовал для указания метода init в springmvc-сервлете.xml с помощью:



<beans>
<bean id="myBean" class="..." init-method="init"/>
</beans>


Как я могу указать метод init, используя версию аннотации?

766   3  

3 ответов:

можно использовать

@PostConstruct
public void init() {
   // ...
}

в качестве альтернативы вы можете иметь свой класс реализовать InitializingBean интерфейс для обеспечения функции обратного вызова (afterPropertiesSet()), который вызовет ApplicationContext при создании компонента.

public class InitHelloWorld implements BeanPostProcessor {

   public Object postProcessBeforeInitialization(Object bean,
             String beanName) throws BeansException {
       System.out.println("BeforeInitialization : " + beanName);
       return bean;  // you can return any other object as well
   }

   public Object postProcessAfterInitialization(Object bean,
             String beanName) throws BeansException {
       System.out.println("AfterInitialization : " + beanName);
       return bean;  // you can return any other object as well
   }

}

Comments

    Ничего не найдено.