如何在 Lagom Framework 中进行删除操作?
How can I proceed a delete operation in Lagom Framework?
我是Lagom框架的新手,我需要知道在这个框架中进行删除操作的正确方法是什么。我使用 Java 开发并测试了两种方法:
- 当我处理删除事件时,我将状态设置为 Optional.empty () 但它 returns nullPointerException 崩溃并且我的 readSide(Cassandra 数据库)中的行未被删除
- 我向我的实体添加了一个状态字段,当我处理删除事件时,我将它传递给 -1。当我提到我的实体时,我会测试 State.present 和状态! = -1 确定实体并删除。对于readSide,该行被正确删除
从逻辑上来说,我觉得第二种方式最合乎逻辑,但我想知道Lagom框架是否有好的实践给开发者做删除操作
编辑 1
这是我的 ReadSideHandler 代码,我该如何继续正确处理空选项
@Override
public ReadSideHandler<AuthenticationEvent> buildHandler() {
return readSide.<AuthenticationEvent>builder("authenticationEventOffset")
.setGlobalPrepare(this::createTables)
.setPrepare(tag -> prepareStatements())
.setEventHandler(AuthenticationLoginEvent.class,
e -> insertAuthentication(e.getAuthentication()))
.setEventHandler(AuthenticationLogoutEvent.class, e -> deleteAuthentication(e.getAccessToken()))
.build();
}
第一种方法是正确的,但你应该正确处理读取端的空选项
终于找到问题了。在我的事件 class 中处理不当,我在我的变量上使用了 Preconditions.checkNotNull,这显然是错误的。我从我的代码中删除了这个 xpression,一切正常
我是Lagom框架的新手,我需要知道在这个框架中进行删除操作的正确方法是什么。我使用 Java 开发并测试了两种方法:
- 当我处理删除事件时,我将状态设置为 Optional.empty () 但它 returns nullPointerException 崩溃并且我的 readSide(Cassandra 数据库)中的行未被删除
- 我向我的实体添加了一个状态字段,当我处理删除事件时,我将它传递给 -1。当我提到我的实体时,我会测试 State.present 和状态! = -1 确定实体并删除。对于readSide,该行被正确删除
从逻辑上来说,我觉得第二种方式最合乎逻辑,但我想知道Lagom框架是否有好的实践给开发者做删除操作
编辑 1 这是我的 ReadSideHandler 代码,我该如何继续正确处理空选项
@Override
public ReadSideHandler<AuthenticationEvent> buildHandler() {
return readSide.<AuthenticationEvent>builder("authenticationEventOffset")
.setGlobalPrepare(this::createTables)
.setPrepare(tag -> prepareStatements())
.setEventHandler(AuthenticationLoginEvent.class,
e -> insertAuthentication(e.getAuthentication()))
.setEventHandler(AuthenticationLogoutEvent.class, e -> deleteAuthentication(e.getAccessToken()))
.build();
}
第一种方法是正确的,但你应该正确处理读取端的空选项
终于找到问题了。在我的事件 class 中处理不当,我在我的变量上使用了 Preconditions.checkNotNull,这显然是错误的。我从我的代码中删除了这个 xpression,一切正常