JFinal-event JFinal事件驱动插件

  • 授权协议:MIT
  • 开发厂商:未知
  • 开发语言:java
  • 收录时间:2020-03-20
  • 操作系统:Windows,Linux,OS X
  • 软件作者:596392912
  • 开源标签: JFinal Web框架

软件介绍

JFinal-event是JFinal框架的一个事件驱动插件,其核心目标是深层次解耦,为您节约更多时间,去陪恋人、家人和朋友 :) 事件驱动模型简介 事件驱动模型也就是我们常说的观察者,或者发布-订阅模型;我是这样理解他的: 就仿佛一块石头丢进了池塘里,会泛起一圈一圈的涟漪!其他人只要看到涟漪..."

JFinal-event是JFinal框架的一个事件驱动插件,其核心目标是深层次解耦,为您节约更多时间,去陪恋人、家人和朋友 :)

事件驱动模型简介

事件驱动模型也就是我们常说的观察者,或者发布-订阅模型;我是这样理解他的:

就仿佛一块石头丢进了池塘里,会泛起一圈一圈的涟漪!其他人只要看到涟漪就知道你个二货又在扔石子·。·

接下来先看一个用户注册的例子: 输入图片说明

  • 图片来自开涛的博客详解Spring事件驱动模型

  • 请将图片中的Service理解成业务

用户注册成功后,需要做这么多事:

  1. 加积分

  2. 发确认邮件

  3. 如果是游戏帐户,可能赠送游戏大礼包

  4. 索引用户数据…………

如果这些业务都耦合到UserService或者JFinal中的UserController中,将会变得异常复杂。

下面笔者列举使用JFinal-event来解决这类问题

编写用户保存事件

public class UserSaveEvent extends ApplicationEvent {     private static final long serialVersionUID = 6994987952247306131L;    public UserSaveEvent(Object source) { super(source);    }}

在用户save完成之后触事件

boolean temp = userModel.save();
if (temp) {    EventKit.postEvent(new UserSaveEvent(userModel));}

后面就是个个业务的事件监听了,例如邮件业务

// 注解标记,切勿忘记 @Listener public class UserSaveEmailListener implements ApplicationListener { @Override public void onApplicationEvent(UserSaveEvent event) {    OrderModel order = (UserModel) event.getSource();     // 你的逻辑     // EmailUtils.sendXxxxx }}

突然春节临近了,公司需要做活动,注册用户赠送优惠券,你只需要新增一个UserSaveXXXListener即可.

上一篇:JPlugin-Java服务端插件框架

下一篇:beegoapix-beegoapi扩展框架

您可能感兴趣的文章

相关阅读

查看更多 >