当前位置: 首页 > 知识库问答 >
问题:

mapstruct空检查导致spotbug错误

谷梁楚青
2023-03-14

我们为源和目标定义了一个mapstruct映射器,该映射器也使用Lombok。

@Value
class Source {
  @NonNull List<ElementSource> elements;
}

@Value
class Target {
  @NonNull List<ElementTarget> elements;
}

@Mapper
public interface Mapper {
  Target mapToTarget(Source source);
}
        List<ElementTarget> elements = null;

        List<Element> list = source.getColumns();
        if ( list != null ) {
            elements = new ArrayList<ElementTarget>( list );
        }
        
        Target target = new Target( elements );

        return target;
    null

对于选项3和4,我找不到mapstruct是否支持它的答案。

共有1个答案

於子晋
2023-03-14

理想的解决办法是备选案文3。MapStruct目前不支持这一点。但是,它是MapStruct/MapStruct#1243中请求的特性。如果你对它感兴趣,我建议投赞成票。

选项4也是一个新特性,我不确定它在MapStruct中有多少属于它,但您可以尝试将它作为一个特性请求来获得社区的反馈。

 类似资料:
  • 我正在使用至少一次检查点模式,这应该是异步化进程。有人能建议吗?我的检查点设置 我的工作有128个容器。 我想用一个30分钟的检查站看看

  • 问题内容: 在Java代码中执行空检查时,如果您为空值抛出IllegalArgumentExceptions,那么您将使用哪种消息模板? 我们倾向于使用这样的东西 哪个更好:“ is null”或“ was null”,为什么? 对我来说,“是空的”感觉更自然。 问题答案: 由于由于失败的前提条件检查而引发,因此,我认为除了陈述事实以外,还应说明已违反的 要求 。 就是说,而不是说。 关于使用库进

  • 在执行某个操作之前,我正在检查 null,但我遇到了一些问题。以下是代码: 我在点 c.size() != null 处得到一个“运算符 != 未定义参数类型int,null”。我知道 size 方法的返回类型是整数,这就是我收到此错误的原因吗?希望有人能提供建议。谢谢。

  • 本文向大家介绍sitecore 空/空检查,包括了sitecore 空/空检查的使用技巧和注意事项,需要的朋友参考一下 示例 IsNotNull 这是一种非常简单且流行的方法,用于检查项目是否不为空。它只是检查传入的对象是否为空。 IsNotNullOrEmpty 这与上面的IsNotNull相同,但是适用于字符串值而不是对象。 一片空白 这只是该IsNotNull()方法的逆过程。此方法断言该对

  • 我在我的项目中使用Mapstruct。在其中一个实体中,我有set[oneToMany]结构。当我在存储库中使用findAll()检索所有数据时,如果没有绑定,则返回一个空的HashSet。

  • 我得到这个错误: InvalidRequest:服务器错误:code=2200[无效查询]消息="Java源代码编译失败: 第1行:运算符!=对于参数类型long, null 第1行:运算符!=对于参数类型long, null未定义" 而在手册中,这些比较似乎是可以的(例如这里)。我使用的是Cassandra 4.0.3(通过docker图像)。