我在Spring MVC项目中使用Lightadmin http://lightadmin.org/ crud框架。我正在搜索覆盖“删除方法”的方式,因为我想做一个“软删除”,我的实体中有一个名为“已删除”的字段。当我按下删除按钮时,确实删除了我的数据库中的行,我想要更改该行为以进行更新,并将删除的字段设置为true。
我在官方文档中搜索并发现了这个:http://lightadmin.org/getting-started/registering-repository-event-listeners/,但是当侦听器上的方法执行时,最后在数据库中删除了该行。我想停止执行以防止删除操作。我正在做“回归”,但没有工作。这是我的倾听者。
可能框架LightAdmin是一个糟糕的选择,但我需要一个像这样的框架。你知道吗?感谢所有!!!!!
public class PersonListener extends AbstractRepositoryEventListener<Person> {
private static final Logger logger = LoggerFactory.getLogger(PersonListener.class);
//@Autowired
private PersonFacadeImpl personFacade = new PersonFacadeImpl() ;
//@Autowired
//private PersonFacade personFacade;
@Override
protected void onBeforeDelete(Person entity) {
//super.onBeforeDelete(entity);
personFacade.deleteSoft(entity.getId());
logger.info("ON BEFORE DELETE PERSON " + entity.getName());
//Here I want prevent the next step , its go to delete the row
//calling hibernate
return;
}
@Override
protected void onAfterDelete(Person entity) {
//super.onAfterDelete(entity);
logger.info("ON AFTER DELETE PERSON " + entity.getName());
}
}
}