DAO 메서드List Void 차이점DAO ListDAO Voidbackend

DAO 메서드에서 List와 Void 주요 차이점

KUKJIN LEE
KUKJIN LEE
2024년 11월 4일
289

DAO (Data Access Object) 메서드를 사용할 때, List 또는 void를 사용하는 선택은 작업의 성격에 따라 달라집니다. 간단히 말해, List는 데이터를 조회할 때 사용되며, void는 삽입, 수정 또는 삭제와 같이 데이터를 반환하지 않는 작업에 사용됩니다.

 

요약

  • List<HashMap<String, Object>>: 조회 작업에서 데이터를 반환해야 할 때 사용되며, 보통 select 쿼리에 사용됩니다.

  • void: 삽입, 수정, 삭제와 같은 데이터 조작 작업에서 반환 값이 필요 없을 때 사용됩니다.

 

1. 데이터 조회 작업 (select 메서드)

List<HashMap<String, Object>> select(HashMap<String, Object> params);

List<HashMap<String, Object>> 반환 타입

  • 이 메서드는 데이터베이스에서 여러 개의 레코드를 조회하여 반환합니다.

  • 반환 타입이 List인 이유는 쿼리 결과가 여러 행을 가질 수 있기 때문입니다. 각각의 행은 컬럼명과 해당 값을 키-값 쌍으로 저장한 HashMap 형태로 표현됩니다.

  • 조회 작업은 보통 사용자나 애플리케이션이 필요한 데이터를 반환해야 하므로, 이러한 결과를 저장하고 반환하기 위해 List가 사용됩니다.

 

2. 삽입, 수정, 삭제 작업 (insert, update메서드)

void insert(HashMap<String, Object> params);
void update(HashMap<String, Object> params);
 void 반환 타입
  • 삽입 (INSERT), 수정 (UPDATE), 삭제 (DELETE) 작업은 데이터베이스의 데이터를 변경하는 작업입니다.

  • 일반적으로 이러한 작업들은 데이터를 반환할 필요가 없습니다. 예를 들어, 데이터가 성공적으로 삽입되거나 수정되었다면, 그 사실 자체로 충분하며 추가적인 반환 값은 필요하지 않습니다.

  • 따라서 이러한 메서드는 void 반환 타입을 가집니다.

  • 다만, 데이터베이스 작업이 성공했는지 여부나 몇 개의 레코드가 영향을 받았는지 확인해야 하는 경우에는 영향을 받은 행의 개수를 나타내는 int와 같은 반환 타입을 사용할 수 있습니다.

 
 

관련 글

[SQL 입문] 필요한 데이터만 콕 집어 가져올 수 있는 WHERE 절

사용자는 테이블에 있는 모든 데이터를 다 보고 싶어 하지는 않습니다. 오히려 특정 항목에 대한 데이터만 가져오고 싶을 때가 훨씬 많습니다. 예를 들어, 어떤 사용자의 이메일이나 ID는 알고 있는데, 그 사람이 언제 우리 앱에 가입했는지 확인하고 싶다고 가정해 봅시다...

2026년 1월 27일10

SQL에서 SELECT란 무엇인가?

데이터베이스를 거대한 서류 보관함이라고 생각하면 됩니다. 보관함 안에는 수많은 데이터가 차곡차곡 쌓입니다. SELECT는 이 보관함에서 "내가 원하는 정보를 찾아줘!"라고 요청하는 명령어입니다. 이 과정을 전문 용어로 '쿼리(Query)'라고 부릅니다. &amp;nbs...

2026년 1월 26일10

[SQL 기초] "언제 하나씩 다 넣어?" 데이터 한 번에 넣기

개발을 하다 보면 데이터베이스(DB)에 샘플 데이터를 대량으로 넣어야 할 때가 있습니다. 메뉴 100개를 추가해야 하는데 INSERT 문을 100번 쓰고 있다면? 너무 비효율적이죠! 오늘은 SQL에서 여러 데이터를 한 번에 넣는 '다중 삽입(Multiple Inse...

2026년 1월 21일13

SQL 데이터 삽입하기

데이터가 없는 데이터베이스는 연료 없는 로켓과 같습니다. 이제 'Missions' 테이블에 새로운 행(row)을 추가하는 방법을 알아보겠습니다. "삽입(Inserting)"은 '데이터 추가'를 의미합니다. 기존 Missions 테이블 ...

2026년 1월 20일12