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 |