वसंत में कस्टम कार्यक्रम

अपनी स्वयं की कस्टम घटनाओं को लिखने और प्रकाशित करने के लिए कई कदम उठाए जाने हैं। कस्टम स्प्रिंग ईवेंट को लिखने, प्रकाशित करने और संभालने के लिए इस अध्याय में दिए गए निर्देशों का पालन करें।

कदम विवरण
1 SpringExample नाम से एक प्रोजेक्ट बनाएँ और के तहत एक पैकेज com.tutorialspoint बनाएँsrcबनाया परियोजना में फ़ोल्डर। इस पैकेज के तहत सभी कक्षाएं बनाई जाएंगी।
2 स्प्रिंग हैलो वर्ल्ड उदाहरण अध्याय में बताए अनुसार बाहरी जार विकल्प का उपयोग करके आवश्यक स्प्रिंग लाइब्रेरी जोड़ें
3 एक घटना वर्ग, बनाएं CustomEvent बढ़ा करApplicationEvent। इस वर्ग को डिफॉल्ट कंस्ट्रक्टर को परिभाषित करना चाहिए जो कि ApplicationEvent क्लास से कंस्ट्रक्टर को इनहेरिट करना चाहिए।
4 एक बार जब आपका ईवेंट क्लास परिभाषित हो जाता है, तो आप इसे किसी भी क्लास से प्रकाशित कर सकते हैं, चलिए हम बताते हैं EventClassPublisher जो ApplicationEventPublisherAware को लागू करता है । आपको XML कॉन्फ़िगरेशन फ़ाइल में इस वर्ग को बीन घोषित करने की भी आवश्यकता होगी ताकि कंटेनर बीन को एक इवेंट प्रकाशक के रूप में पहचान सके क्योंकि यह ApplicationEventPublisherAware इंटरफ़ेस को लागू करता है।
5 एक प्रकाशित घटना को एक कक्षा में संभाला जा सकता है, आइए EventClassHandler कहते हैं जो ApplicationListener इंटरफ़ेस को लागू करता है और कस्टम इवेंट के लिए OnApplicationEvent विधि को लागू करता है
6 सेम विन्यास फाइल बनाएं Beans.xml के तहतsrcफ़ोल्डर और एक MainApp वर्ग जो स्प्रिंग एप्लिकेशन के रूप में काम करेगा।
7 अंतिम चरण सभी जावा फ़ाइलों और बीन कॉन्फ़िगरेशन फ़ाइल की सामग्री बनाना और नीचे बताए अनुसार एप्लिकेशन चलाना है।

यहाँ की सामग्री है CustomEvent.java फ़ाइल

package com.tutorialspoint;

import org.springframework.context.ApplicationEvent;

public class CustomEvent extends ApplicationEvent{
   public CustomEvent(Object source) {
      super(source);
   }
   public String toString(){
      return "My Custom Event";
   }
}

निम्नलिखित की सामग्री है CustomEventPublisher.java फ़ाइल

package com.tutorialspoint;

import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.ApplicationEventPublisherAware;

public class CustomEventPublisher implements ApplicationEventPublisherAware {
   private ApplicationEventPublisher publisher;
   
   public void setApplicationEventPublisher (ApplicationEventPublisher publisher) {
      this.publisher = publisher;
   }
   public void publish() {
      CustomEvent ce = new CustomEvent(this);
      publisher.publishEvent(ce);
   }
}

निम्नलिखित की सामग्री है CustomEventHandler.java फ़ाइल

package com.tutorialspoint;

import org.springframework.context.ApplicationListener;

public class CustomEventHandler implements ApplicationListener<CustomEvent> {
   public void onApplicationEvent(CustomEvent event) {
      System.out.println(event.toString());
   }
}

निम्नलिखित की सामग्री है MainApp.java फ़ाइल

package com.tutorialspoint;

import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class MainApp {
   public static void main(String[] args) {
      ConfigurableApplicationContext context = 
         new ClassPathXmlApplicationContext("Beans.xml");
	  
      CustomEventPublisher cvp = 
         (CustomEventPublisher) context.getBean("customEventPublisher");
      
      cvp.publish();  
      cvp.publish();
   }
}

निम्नलिखित विन्यास फाइल है Beans.xml

<?xml version = "1.0" encoding = "UTF-8"?>

<beans xmlns = "http://www.springframework.org/schema/beans"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

   <bean id = "customEventHandler" class = "com.tutorialspoint.CustomEventHandler"/>
   <bean id = "customEventPublisher" class = "com.tutorialspoint.CustomEventPublisher"/>

</beans>

एक बार जब आप स्रोत और बीन कॉन्फ़िगरेशन फ़ाइलों का निर्माण कर लेते हैं, तो हम एप्लिकेशन चलाते हैं। यदि आपके आवेदन में सब कुछ ठीक है, तो यह निम्नलिखित संदेश को प्रिंट करेगा -

y Custom Event
y Custom Event