2011-03-24 17 views
88

मैं नियंत्रक को नए एनोटेशन संस्करण में परिवर्तित कर रहा हूं।स्प्रिंग कंट्रोलर (एनोटेशन संस्करण) में इनिट विधि

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

मैं एनोटेशन संस्करण का उपयोग कर init विधि निर्दिष्ट कैसे कर सकते हैं: पुराने संस्करण में मैं का उपयोग कर springmvc-servlet.xml में init विधि निर्दिष्ट करने के लिए प्रयोग किया जाता है?

+0

भी देखें http://stackoverflow.com/questions/1088550 – skaffman

उत्तर

198

आप

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

Btw: जावा 1.7 –

+0

@PeterRader के बाद से, जावा 1.7 एक आवश्यकता :) –

+1

आप ठीक कह रहे हैं, अपने 'आम एनोटेशन 1.0 "नहीं है, Java1 .7 भी काम करेगा। –

18

का उपयोग वैकल्पिक रूप से आप अपनी कक्षा एक कॉलबैक फ़ंक्शन (afterPropertiesSet()) जो ApplicationContext जब सेम का निर्माण किया है लागू करेगा प्रदान करने के लिए InitializingBean इंटरफ़ेस को लागू कर सकते हैं कर सकते हैं।

0
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 
    } 

} 
संबंधित मुद्दे