Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 布尔默认值映射结构_Java_Mapstruct - Fatal编程技术网

Java 布尔默认值映射结构

Java 布尔默认值映射结构,java,mapstruct,Java,Mapstruct,我试图使用MapStruct为布尔字段设置defaultValue,但生成的代码只是忽略它 我的代码: public class CreateEventRequest { @NotNull @JsonProperty private Boolean isPrivate; @JsonProperty private Boolean friendCanInviteFriends; @JsonProperty private boolean

我试图使用MapStruct为布尔字段设置defaultValue,但生成的代码只是忽略它

我的代码:

public class CreateEventRequest {

    @NotNull
    @JsonProperty
    private Boolean isPrivate;

    @JsonProperty
    private Boolean friendCanInviteFriends;

    @JsonProperty
    private boolean showGuestList;

    public boolean isPrivate() {
      return isPrivate;
     }

     public String getDescription() {
       return description;
     }

      public boolean isFriendCanInviteFriends() {
        return friendCanInviteFriends;
     }

      public boolean isShowGuestList() {
        return showGuestList;
     }
}
我的地图绘制者:

@Mapper(componentModel = "spring")
public interface CreateEventRequestMapper {
    @Mapping(target = "showGuestList", source = "showGuestList", defaultExpression = "java(true)")
    @Mapping(target = "friendCanInviteFriends", source = "friendCanInviteFriends", defaultValue = "true")
    Event map(CreateEventRequest request);
}
生成的代码:

public class CreateEventRequestMapperImpl implements CreateEventRequestMapper {

    @Override
    public Event map(CreateEventRequest request) {
        if ( request == null ) {
            return null;
        }

        Event event = new Event();

        event.setShowGuestList( request.isShowGuestList() );
        event.setFriendCanInviteFriends( request.isFriendCanInviteFriends() );
        event.setPrivate( request.isPrivate() );

        return event;
    }
}
如您所见,我尝试过使用primitive/non primitive类型,但它只是忽略了defaultValue

我是不是遗漏了什么


谢谢

问题在于,源对象中getter方法的返回类型始终是基元,不能为null,您需要返回
布尔值


MapStruct不支持需要反射的直接私有字段访问

问题在于,源对象中getter方法的返回类型始终是基元,不能为null,您需要返回
布尔值


MapStruct不支持需要反射的直接私有字段访问

CreateEventRequest
中的getter是什么样子的?只是用getter编辑的!
CreateEventRequest
中的getter是什么样子的?只是用getter编辑的!