增加 spring cloud bus rabbitmq 示例

This commit is contained in:
YunaiV
2020-04-08 07:37:43 +08:00
parent 1c215d9ed7
commit 3ce750113e
4 changed files with 8 additions and 10 deletions

View File

@@ -1,12 +1,11 @@
package cn.iocoder.springcloud.labx18.listenerdemo;
import cn.iocoder.springcloud.labx18.listenerdemo.event.UserRegisterEvent;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.bus.jackson.RemoteApplicationEventScan;
@SpringBootApplication
@RemoteApplicationEventScan(basePackageClasses = UserRegisterEvent.class)
@RemoteApplicationEventScan
public class ListenerDemoApplication {
public static void main(String[] args) {

View File

@@ -10,4 +10,4 @@ spring:
password: guest
server:
port: -1
port: ${random.int[10000,19999]} # 随机端口,方便启动多个消费者

View File

@@ -1,12 +1,10 @@
package cn.iocoder.springcloud.labx18.publisherdemo;
import cn.iocoder.springcloud.labx18.publisherdemo.event.UserRegisterEvent;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.bus.jackson.RemoteApplicationEventScan;
@SpringBootApplication
@RemoteApplicationEventScan(basePackageClasses = UserRegisterEvent.class)
//@RemoteApplicationEventScan
public class PublisherDemoApplication {
public static void main(String[] args) {

View File

@@ -3,7 +3,8 @@ package cn.iocoder.springcloud.labx18.publisherdemo.controller;
import cn.iocoder.springcloud.labx18.publisherdemo.event.UserRegisterEvent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.bus.ServiceMatcher;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.ApplicationEventPublisherAware;
import org.springframework.web.bind.annotation.GetMapping;
@@ -18,8 +19,8 @@ public class DemoController implements ApplicationEventPublisherAware {
private ApplicationEventPublisher applicationEventPublisher;
@Value("${spring.application.name}")
private String applicationName;
@Autowired
private ServiceMatcher busServiceMatcher;
@Override
public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher) {
@@ -32,7 +33,7 @@ public class DemoController implements ApplicationEventPublisherAware {
logger.info("[register][执行用户({}) 的注册逻辑]", username);
// ... 发布
applicationEventPublisher.publishEvent(new UserRegisterEvent(this, applicationName,
applicationEventPublisher.publishEvent(new UserRegisterEvent(this, busServiceMatcher.getServiceId(),
"**", username));
return "success";
}