>source

MongoRepository 인터페이스에서 사용중인 Java 클래스 엔티티에 속성을 추가하여 콜렉션에 새 부울 필드를 추가하고 있습니다. 그러나 기존 문서의 새 필드가 데이터베이스에서 null로 초기화되고 있습니다. 기존 문서에서 새 필드의 기본값을 false로 설정하려고합니다. Spring Data MongoDB에서 어떻게 할 수 있습니까?


  • 답변 # 1

    버전 1 Java 엔티티가 있다고 가정하자

    @Document
    Public Class Person {
    @Id
    Private String id;
    private String firstName;
    private String lastName;
    .........
    .........
    
    

    나중에 소개했습니다

    @Document
    Public Class Person {
    @Id
    Private String id;
    private String firstName;
    private String lastName;
    private Boolean isAlive; //New Boolean attribute
    .........
    .........
    
    

    java에서 인스턴스 객체의 기본값은 null이므로 isAlive에 대한 값이없는 mongoDB의 문서는 기본값이 null입니다. 기본값이 false 인 경우 다음을 수행 할 수 있습니다

    private Boolean isAlive = Boolean.FALSE;
    
    

관련 자료

  • 이전 python - 가능 - 소스 코드 및 관련 파일이 네트워크 드라이브에 남아있는 동안 각 사용자 랩톱에 가상 환경 복제
  • 다음 memory - 큰 데이터에 대한 R의 실루엣 계산