인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

power1004pow님의 프로필 이미지
power1004pow

작성한 질문수

스프링 DB 1편 - 데이터 접근 핵심 원리

try-with-resources 사용할 경우 마지막 리턴은 널로 반환하는게 일반적인가요?

해결된 질문

작성

·

316

1

로드맵 정주행중입니다
마지막 리턴은 널로 반환하는게 일반적인가요?

JPA로드맵도 해보고 싶은데 20%할인 쿠폰 부탁드립니다ㅠ

public Member save(Member member) throws SQLException {
String sql = "insert into member(member_id, money) values(?, ?)";

try (Connection con = getConnection();
PreparedStatement pstmt = con.prepareStatement(sql)) {
pstmt.setString(1, member.getMemberId());
pstmt.setInt(2, member.getMoney());
pstmt.executeUpdate();
return member;
} catch (
SQLException e) {
e.printStackTrace();
}
return null;
}

 

답변 1

1

안녕하세요. power1004pow님, 공식 서포터즈 y2gcoder입니다.

return 타입은 비즈니스 로직 설계와 요구사항에 따라 다릅니다. 

감사합니다.

power1004pow님의 프로필 이미지
power1004pow
질문자

리소스가 있으면 member를 정상적으로 반환 하구요. 예외가 발생해서 잡을 경우 log를 남기든지 하잖아요, 그러면 문법 상 그 뒤에 return을  한 번 더 써줘야 하는데 이 경우 일반적으로 뭘 리턴하는 지 묻는게 질문입니다

power1004pow님 제가 너무 간단하게 말씀드린 것 같습니다. :)

위에 보여주신 것처럼 Member로 그대로 반환하는 경우에는 예외 발생 처리 후 return 타입을 null로 보통 줄 수 있을 것이고,  return 타입을 Optional<Member>와 같이 반환한다고 하면 Optional.empty()로 반환해줄 수 있겠죠? 그러면 그 반환 값을 가지고 처리를 하게 됩니다. 

그런 의미에서 리턴타입은 비즈니스 로직 설계와 요구사항에 따라 다르다고 말씀드린 것입니다. 

 

power1004pow님의 프로필 이미지
power1004pow

작성한 질문수

질문하기