1

我有一个简单的场景(类被简化):

@Entity
@RooJavaBean
@RooToString
@RooJpaActiveRecord( finders = {"findEventsByBeginTime"})
class Event{
    @OneToMany
    @OrderBy("beginTime ASC")
    Set<EventStage> stages;

    Date beginTime;
    Date endTime;
}

@Entity
@RooJavaBean
@RooToString
@RooJpaActiveRecord
class EventStage{
    @ManyToOne
    Event parentEvent;

    Date beginTime;
    Date endTime;
}

每当对 EventStage 进行更改时,我想根据最早和最新的 EventStage 更新父 Event.beginTime 和 Event.endTime。

有没有办法(Roo、Hibernate、Spring)在项目被修改时通知?它必须适用于添加新的 EventStage 和删除现有的 EventStage。当然我可以通过一些蛮力检查来接近它,但我正在寻找更复杂的方法。

4

0 回答 0