کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

درس هیجدهم : آموزش نوشتن Custom Events در Spring

آموزش نوشتن دلخواه Custom Events در Spring

برای نوشتن یک رویداد دلخواه در Spring ، بایستی چند مرحله را انجام دهید . در این درس به صورت گام به گام همراه با سورس عملی مثال ، نحوه نوشتن یک Custom Event را آموزش داده ایم .
کارهای زیر را در نرم افزار Eclipse انجام دهید :


  1. یک پروژه جدید به نام Spring Example و یک پکیج جدید به نام com.tahlildadeh را در پوشه src برنامه ایجاد کنید . کلیه کلاس های دیگر برنامه ، بایستی در این پوشه تعریف شوند .
  2. به وسیله ابزار Add External JARs همانطور که درس نوشتن اولین برنامه Spring آموزش دادیم دادیم ، کتابخانه های لازم را به پروژه اضافه کنید .
  3. با گسترش بخش ApplicationEvwnt یک کلاس جدید به نام CustomEvent را اضافه کنید . این کلاس بایستی دارای یک متد سازه پیش فرض default Constructor بوده که از کلاس ApplicationEvent مشتق شده باشد .
  4. به محض اینکه event Class Publisher را ایجاد کرده که باعث اجرای ApplicationEventPublisherAwarie می شود .
    از طرف دیگر شما نیاز دارید تا این کلاس را در فایل پیکربندی اطلاعات به عنوان یک Bean تعریف کنید . این کار باعث می شود تا Container بتواند Bean مورد نظر را به عنوان یک اجراکننده رویداد ( Publisher Event) شناسایی کرده ، چرا که خود آن Bean باعث اجرای رابط کاربری ApplicationEventpublisherAware می شود .
  5. یک event منتشر شده را می توان درون یک کلاس مدیریت نمود . برای این منظور ما کلاس EventClassHandler را انتخاب کرده که خود باعث اجرای رابط کاربری ApplicationListener و متد onApplicationEvent برروی event مورد نظر ما می شود .
  6. فایل پیکربندی اطلاعات Bean.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{

 

   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();

   }

}

در نهایت نیز کد فایل پیکربندی اطلاعات Bean.xml به صورت زیر است :


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

 

 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">

 

    id="customEventHandler" 

      class="com.tutorialspoint.CustomEventHandler"/>

 

    id="customEventPublisher" 

      class="com.tutorialspoint.CustomEventPublisher"/>

در صورتی که محتوی تمامی فایل ها را به درستی ایجاد کرده و شکلی وجود نداشته باشد ، پس از اجرای برنامه ، خروجی زیر حاصل می شود :



y Custom Event

y Custom Event

1395/05/28 3069 1372
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...