[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
  • 전체
    오늘
    어제
    • 분류 전체보기 (231)
      • 개발 (Development) (165)
        • Algorithm (1)
        • Angular (1)
        • AWS (6)
        • DeepSeek (2)
        • Docker (7)
        • Git (3)
        • Java (34)
        • JavaScript (4)
        • Kafka (5)
        • Kubernetes (4)
        • Linux (7)
        • PostgreSQL (38)
        • Python (31)
        • 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) (11)
      • 기타 (Others) (3)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

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

  • 최근 글

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

티스토리툴바