1

列挙型フィールドと、同じ列挙型とフィールド名を持つ DTO を持つエンティティがあります。

@Entity
@Table(name = "user")
public class UserModel {

    @Id
    @GeneratedValue
    private int id;

    @Enumerated(EnumType.STRING)
    @Column(nullable = false)
    private Gender gender;

    // getters and setters
}

public class UserDto {
    public Gender gender;
}

public enum Gender {
    male,
    female,
    unisex
}

config を追加せずに新しいオブジェクトを作成して modelMapper を使用しています。

しかし、エンティティ オブジェクトに dto をマッピングした後、性別はエンティティ オブジェクトで null になります。

Dtoオブジェクトには性別があります、私はそれをチェックしました。

UserModel user = mapper.map(dto, UserModel.class);
user.getGender(); // null

問題を理解するのを手伝ってください。

4

1 に答える 1