小编FFL*_*FFL的帖子

使用Reactor选择与键匹配的事件

使用reactor(https://github.com/reactor/reactor)我通知一些事件,如

 commandReactor.notify("CREATE_CUSTOMER", Event.wrap(customer));
 commandReactor.notify("CREATE_ORDER", Event.wrap(order));
Run Code Online (Sandbox Code Playgroud)

如何实现选择以"CREATE"开头的所有事件的选择器?就像是

@Selector(value = "CREATE*", reactor = "@commandReactor")
Run Code Online (Sandbox Code Playgroud)

提前致谢.

java spring reactor

3
推荐指数
1
解决办法
691
查看次数

在JPA实体监听器中注入spring bean

我试图让JPA Entity Listener通过将其标记为@Configurable来了解spring上下文.但是注入的spring bean是null.能够使用相同的技术使JPA实体了解Spring上下文.我使用Spring(core和data-jpa)作为基础设施.有关如何使用JPA Entity Listeners或spring data-jpa实现此目的的任何想法?

@Configurable
@Scope("singleton")
public class AggregateRootListener {
    private static Logger log = LoggerFactory.getLogger(AggregateRootListener.class);

    @Autowired
    private EventHandlerHelper eventHandlerHelper;

    @PostPersist
    @PostUpdate
    public void publishEvents(BaseAggregateRoot aggregateRoot){
        log.info(aggregateRoot.getEvents().toString());
        aggregateRoot.getEvents().stream()
            .forEach(event -> {
                eventHandlerHelper.notify(event, aggregateRoot);
                log.info("Publishing " + event + " " + aggregateRoot.toString());
            });
    }
}
Run Code Online (Sandbox Code Playgroud)

和BaseAggregateRoot代码

@Configurable
@Scope("prototype")
@MappedSuperclass
@EntityListeners(AggregateRootListener.class)
public abstract class  BaseAggregateRoot extends BaseDomain{
    public static enum AggregateStatus {
        ACTIVE, ARCHIVE
    }

    @EmbeddedId
    @AttributeOverrides({
          @AttributeOverride(name = "aggregateId", column = @Column(name = "ID", nullable = false))}) …
Run Code Online (Sandbox Code Playgroud)

spring jpa aspectj spring-data-jpa

3
推荐指数
1
解决办法
5471
查看次数

标签 统计

spring ×2

aspectj ×1

java ×1

jpa ×1

reactor ×1

spring-data-jpa ×1