Sự kiện tùy chỉnh vào mùa xuân
Có một số bước cần thực hiện để viết và xuất bản các sự kiện tùy chỉnh của riêng bạn. Thực hiện theo các hướng dẫn được cung cấp trong chương này để viết, xuất bản và xử lý các Sự kiện Mùa xuân Tùy chỉnh.
Các bước | Sự miêu tả |
---|---|
1 | Tạo một dự án với tên SpringExample và tạo một gói com.tutorialspoint trongsrcthư mục trong dự án đã tạo. Tất cả các lớp sẽ được tạo trong gói này. |
2 | Thêm các thư viện Spring bắt buộc bằng cách sử dụng tùy chọn Thêm JAR bên ngoài như được giải thích trong chương Ví dụ về Spring Hello World . |
3 | Tạo một lớp sự kiện, CustomEvent bằng cách mở rộngApplicationEvent. Lớp này phải xác định một phương thức khởi tạo mặc định sẽ kế thừa phương thức khởi tạo từ lớp ApplicationEvent. |
4 | Sau khi lớp sự kiện của bạn được xác định, bạn có thể xuất bản nó từ bất kỳ lớp nào, giả sử như EventClassPublisher triển khai ApplicationEventPublisherAware . Bạn cũng sẽ cần khai báo lớp này trong tệp cấu hình XML dưới dạng bean để vùng chứa có thể xác định bean là nhà xuất bản sự kiện vì nó triển khai giao diện ApplicationEventPublisherAware. |
5 | Một sự kiện đã xuất bản có thể được xử lý trong một lớp, giả sử EventClassHandler triển khai giao diện ApplicationListener và triển khai phương thức onApplicationEvent cho sự kiện tùy chỉnh. |
6 | Tạo tệp cấu hình đậu Beans.xml trongsrcthư mục và một lớp MainApp sẽ hoạt động như ứng dụng Spring. |
7 | Bước cuối cùng là tạo nội dung của tất cả các tệp Java và tệp Cấu hình Bean và chạy ứng dụng như được giải thích bên dưới. |
Đây là nội dung của CustomEvent.java tập tin
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";
}
}
Sau đây là nội dung của CustomEventPublisher.java tập tin
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);
}
}
Sau đây là nội dung của CustomEventHandler.java tập tin
package com.tutorialspoint;
import org.springframework.context.ApplicationListener;
public class CustomEventHandler implements ApplicationListener<CustomEvent> {
public void onApplicationEvent(CustomEvent event) {
System.out.println(event.toString());
}
}
Sau đây là nội dung của MainApp.java tập tin
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();
}
}
Sau đây là tệp cấu hình 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>
Khi bạn đã hoàn tất việc tạo các tệp cấu hình nguồn và bean, hãy để chúng tôi chạy ứng dụng. Nếu mọi thứ đều ổn với ứng dụng của bạn, nó sẽ in ra thông báo sau:
y Custom Event
y Custom Event