// CusDAOImpl 클래스
import java.util.ArrayList;
import java.util.List;
public class CusDAOImpl implements CusDAO {
.
(생략)
.
@Override
public List<CusDTO> getAllCustomers() {
List<CusDTO> customers = new ArrayList<>();
conn= null;
stmt = null;
rs = null;
try {
conn = JDBCUtil.getConnection();
stmt = conn.prepareStatement("SELECT * FROM customer");
rs = stmt.executeQuery();
while (rs.next()) {
String id = rs.getString("customer_id");
String name = rs.getString("name");
String tel = rs.getString("tel");
customers.add(new CusDTO(id, name, tel));
}
} catch (SQLException e) {
System.out.println("SELECT문에서 SQLException이 발생했습니다. getAllCustomers method를 확인하세요. 오류 : " + e.getMessage());
} finally {
JDBCUtil.close(rs);
JDBCUtil.close(stmt);
JDBCUtil.close(conn);
}
return customers;
}
// Main 클래스 (import는 getAllCustomers()에 사용할 것만 가져옴)
import java.util.List;
CusDAO cusdao = new CusDAOImpl();
.
.
public class CusMain {
public static void main(String[] args) {
.
(생략)
.
if(menuNo.equals("1")) {
List<CusDTO> customers = cusdao.getAllCustomers();
for (CusDTO customer : customers) {
System.out.println("아이디 : " +customer.getId());
System.out.println("이름 : " +customer.getName());
System.out.println("전화번호 : " +customer.getTel());
}
메서드가 실행되는 과정은 이렇다!
아래는 출력 결과이다. List<>를 수업 시간에 배우긴 했는데 정확히 어떤 것인지 어느 상황에서 사용해야하는지를 몰랐는데 오늘 코드를 구현하면서 써보니 조금은 이해가 된다!!! 아직 완벽하게 이해가 되지는 않아서 더 많은 코드를 봐야할 것 같다. 🤨🤨🤨