第一版实现:
实现了Zbus的JFinal插件,JFinal里用Zbus更方便了。
第二版主要实现了以下目标:
1)简化设计,去掉了异步发送,仅支持同步发送。
2)信息发送/接收实现了泛型支持。
3)可直接发送/接收JFinal中特有的Model对象和Record对象。
导入dist目录下的jfinal-zbus-2.0.0.jar
同时还需要导入zbus,znet,fastjson,jfinal等jar包
配置代码如下:
ZbusPlugin zp = new ZbusPlugin(); zp.createMq("MyMQ"); zp.createTopic("Topic", "Check"); zp.registMqMessageCallback("MyMQ", new TMessageCallback<Dict>(){ @Override public void onMessage(Dict msg) { LOG.info("receive from MyMQ: key=" + msg.getStr("key") + ",value=" + msg.getStr("value")); } }); zp.registTopicMessageCallback("Topic", "Check", new TMessageCallback<String>(){ @Override public void onMessage(String msg) { LOG.info("receive from Topic.Check: msg=" + msg); } }); me.add(zp);
发送代码如下:
Sender<Dict> mqSender = new Sender<Dict>("MyMQ"); Dict dict = new Dict(); dict.setId(1L); dict.set("key", "key"+1); dict.set("value", "value"+1); mqSender.send(dict); Sender<String> topicSender = new Sender<String>("Topic", "Check"); topicSender.send("这时一个订阅消息");
使用时,可在需要发送的类里定义一个特定类型的发送器。建议发送器的类型不要太复杂。只通过zbus来发送简单的消息。
[email protected]地址如下
https://git.oschina.net/myaniu/jfinal-zbus
时间: 2024-10-14 12:31:08