Frudy
7k
2019-05-28 10:16:33 작성 2019-05-28 13:30:01 수정됨
2
298

Java에서 예외메시지를 중첩시켜서 던지는 이유가 어떻게되나요?


AException: message

Caused by BException

Caused by CException

Caused by DException

이렇게 중첩되게 예외가 쭉 드는 경우가 있다고 했을 때,


오라클을 쓰던 스프링을 쓰던 Mybatis를 쓰던,


AException: message

Caused by BException

Caused by CException

Caused by DException 이렇게 띄워지는 예외가있으면..


AException: message nested excption is path.path.BException: message nested....(이하생략)

이렇게 에러메시지를 계속 중첩시켜서 띄우더라구요.


throw new DException("message", e);

throw new CException("message", e);

throw new BException("message", e);

이렇게 계속 예외를 중첩시키지 않고,
저렇게 error message옆에 nested 계속 붙여서 길~~~게 에러메시지를 만들까요?

이 고민을 해결해보기위해
"nested exception"
"getCause()" 라고 검색해도 안나와서,
"예외처리" 로 검색한 후 전반적으로 내용을 읽어보았으나.. 중첩관련 이야기는 없었습니다.
0
  • 답변 2

  • GAN
    1k
    2019-05-28 12:40:13

    본문이 이해가 잘 안 가지만 예외를 catch 한 메소드 사용법에 따라 해당 예외를 처리할 수 있다면 해당 메소드에서 catch 후 예외를 처리할 수 있는 사용법을 알려주는 예외를 발생시키면 되는거고 아니면 그냥 catch 하지 않고 넘겨서 메소드를 사용하는 사람이 처리하도록 하면 되는거 아닌가요?

  • GAN
    1k
    2019-05-28 15:00:36

    그냥 예외 내용 전체를 읽기 전에 맨 위의 내용만으로 파악이 가능하도록 제일 위에 붙이는 거 아닐까요?

  • 로그인을 하시면 답변을 등록할 수 있습니다.