MongoDB _class 필드 제거하기

2019. 7. 9. 10:18·SpringBoot

MongoDB 사용시, SpringBoot 자동설정을 이용할 경우 아래와 같이 _class 에 Entity Class 의 package 정보가 함께 저장됩니다.

이 부분을 제거하기 위해서는 DefaultMongoTypeMapper 설정을 변경하면 됩니다.

{
  "_id" : NumberLong(112),
  "name" : "마샤",
  "tags" : [ 
    "여자캐릭터",
    "흑마법사"
  ],
  "_class" : "com.company.model.entity.Actor"
}

 

자동설정 소스코드 org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration 참고

@Bean
@ConditionalOnMissingBean({MongoConverter.class})
public MappingMongoConverter mappingMongoConverter(MongoDbFactory factory, MongoMappingContext context, MongoCustomConversions conversions) {
  DbRefResolver dbRefResolver = new DefaultDbRefResolver(factory);
  MappingMongoConverter mappingConverter = new MappingMongoConverter(dbRefResolver, context);
  mappingConverter.setCustomConversions(conversions);
  return mappingConverter;
}

 

변경 후 ( 설정 추가: mappingConverter.setTypeMapper(new DefaultMongoTypeMapper(null)); )

@Configuration
public class MongoConfiguration {
  @Bean
  @ConditionalOnMissingBean(MongoConverter.class)
  public MappingMongoConverter mappingMongoConverter(MongoDbFactory factory,
                                                   MongoMappingContext context, MongoCustomConversions conversions) {
    DbRefResolver dbRefResolver = new DefaultDbRefResolver(factory);
    MappingMongoConverter mappingConverter = new MappingMongoConverter(dbRefResolver, context);
    mappingConverter.setCustomConversions(conversions);
    mappingConverter.setTypeMapper(new DefaultMongoTypeMapper(null));
    return mappingConverter;
    }
}

'SpringBoot' 카테고리의 다른 글

Spring 6 의 HTTP Interface  (0) 2023.03.14
Retrying Feign Calls  (0) 2023.03.14
RedisTemplate 과 Json Serializer 설정  (0) 2019.07.09
restful json request response 패킷 로깅 필터  (1) 2019.07.04
404 NoHandlerFoundException 설정  (1) 2019.07.04
'SpringBoot' 카테고리의 다른 글
  • Retrying Feign Calls
  • RedisTemplate 과 Json Serializer 설정
  • restful json request response 패킷 로깅 필터
  • 404 NoHandlerFoundException 설정
somoly
somoly
About me.
  • somoly
    somoly.tistory.com
    somoly
  • 전체
    오늘
    어제
    • 전체 (55)
      • SpringBoot (8)
      • Kotlin (5)
      • Javascript (4)
      • 백엔드 (6)
      • Linux (25)
      • Windows (1)
      • IT (2)
      • FF14 (1)
      • 애니 (1)
      • Figure (1)
      • 회사생활 (1)
  • 블로그 메뉴

    • HOME
    • TAGS
    • MEDIA
    • LOCATION
    • GUESTBOOK
    • ADMIN
    • WRITE
  • 링크

    • [FF14] 5.0 (71-80) 제작 레벨링 매크로
    • [FF14] 갈론드벨
    • [FF14] FFLogs
    • [FF14] Ariyala 장비 시뮬레이터
    • [FF14] 낚시 도우미
    • [FF14] 인테리어 정보
    • [FF14] 의상 코디 정보
  • 공지사항

  • 인기 글

  • 태그

    Kotlin
    설치
    ubuntu
    interactive table
    bcmod
    동영상
    77인치
    springboot
    tabulator
    string methods
    utf-8
    P2P
    Spring
    HTTP
    최후의 재림
    우분투
    리눅스
    linux
    javascript
    83인치
    versioncomapre
    exchage method
    jvminline
    종료
    dynamodb local
    VirtualBox
    accesskey
    부팅
    피규어
    30일전
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
somoly
MongoDB _class 필드 제거하기
상단으로

티스토리툴바