[Java/JPA] Entity를 Map으로 변환 (Convert Entity to Map)

2024. 4. 2. 12:06·개발 (Development)/Java

Entity의 모든 필드가 맵에 포함될 필요가 없는 경우, 일부 필드만 맵에 포함하고 싶을 경우에는 아래와 같이 할 수 있다.

엔티티의 각 필드를 맵의 키-값 쌍으로 추가하여 엔티티를 맵으로 변환한다.

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        // JPA 엔티티 리스트 생성
        List<YourEntity> entityList = entityManager.createQuery("SELECT e FROM YourEntity e", YourEntity.class).getResultList();

        // JPA 엔티티 리스트를 맵 리스트로 변환
        List<Map<String, Object>> mapList = convertEntityListToMapList(entityList);

        // 변환된 맵 리스트 출력
        for (Map<String, Object> map : mapList) {
            System.out.println(map);
        }
    }

    // JPA 엔티티 리스트를 맵 리스트로 변환하는 메서드
    public static List<Map<String, Object>> convertEntityListToMapList(List<YourEntity> entityList) {
        List<Map<String, Object>> mapList = new ArrayList<>();
        for (YourEntity entity : entityList) {
            Map<String, Object> map = new HashMap<>();
            // 엔티티의 필드를 맵에 추가
            map.put("id", entity.getId());
            map.put("name", entity.getName());
            // 필요한 경우 다른 필드도 추가할 수 있습니다.
            mapList.add(map);
        }
        return mapList;
    }
}

 

위 코드에서 YourEntity는 실제 JPA 엔티티 클래스를 나타내며, 필요에 따라 필드를 추가하고 수정해야 한다. 필요한 경우 다른 필드도 추가할 수 있다.

반응형

'개발 (Development) > Java' 카테고리의 다른 글

[Java] 문자열을 timestampz 형식으로 변경  (0) 2024.04.02
[Java] 날짜 더하기 - Date  (0) 2024.04.02
[Java] 시간 차이 계산 - Date  (0) 2024.04.02
[Java] 리스트(LinkedList) 정렬  (0) 2024.04.02
[Java] 자료 구조  (0) 2022.03.31
'개발 (Development)/Java' 카테고리의 다른 글
  • [Java] 문자열을 timestampz 형식으로 변경
  • [Java] 날짜 더하기 - Date
  • [Java] 시간 차이 계산 - Date
  • [Java] 리스트(LinkedList) 정렬
LoopThinker
LoopThinker
모르는 것을 알아가고, 아는 것을 더 깊게 파고드는 공간
  • LoopThinker
    CodeMemoir
    LoopThinker
  • 전체
    오늘
    어제
    • 분류 전체보기 (238) N
      • 개발 (Development) (171) N
        • Algorithm (1)
        • Angular (1)
        • AWS (7)
        • DeepSeek (2)
        • Docker (7)
        • Git (3)
        • Java (36)
        • JavaScript (4)
        • Kafka (5)
        • Kubernetes (4)
        • Linux (7)
        • PostgreSQL (38)
        • Python (34) N
        • React (3)
        • TypeScript (3)
        • Vue.js (5)
        • General (11)
      • 데이터 분석 (Data Analysis) (1)
      • 알고리즘 문제 풀이 (Problem Solving.. (27)
      • 자격증 (Certifications) (24)
        • ADsP (14)
        • 정보처리기사 (4)
        • Linux Master (5)
        • SQLD (1)
      • 기술 동향 (Tech Trends) (12)
      • 기타 (Others) (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Vue.js
    timescaledb
    백준
    javascript
    백준온라인저지
    AWS
    파이썬
    자바
    docker
    PostgreSQL
    리눅스 마스터 2급 2차
    deepseek
    java
    JSON
    Kubernetes
    DevOps
    pandas
    python
    springboot
    Linux master
    데이터분석
    JPA
    백준알고리즘
    오답노트
    ADsP
    리눅스 마스터 2급
    백준자바
    Kafka
    MyBatis
    Linux
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
LoopThinker
[Java/JPA] Entity를 Map으로 변환 (Convert Entity to Map)
상단으로

티스토리툴바