어떤 버전에서는 Hibernate 예외가 체크되지 않도록 변경되었다는 것을 알고있다. 이유는 무엇입니까? 이것이 철학의 문제인가 실제적인 문제인가?hibernate가 왜 HibernateException을 (체크되지 않음)으로 변경했는지 RuntimeException
12
A
답변
15
실용적. 따라서 try catch 블록에서 Hibernate에 관한 모든 작업을 래핑 할 필요가 없다.
최대 절전 모드 자바 지속성에서 촬영:
예외의 역사 - 예외 그들이 자바 개발자 사이에 가열 된 논쟁에서 항상 최종 처리하는 방법. Hibernate가 주목할만한 역사가있다는 것은 놀라운 일이 아니다. 도 마찬가지이다. Hibernate 3.x가 될 때까지, Hibernate에 의해 던져진 예외들은 모두 체크 된 예외들이었고, 그래서 모든 Hibernate API는 개발자에게 예외를 넘겨주고 예외를 처리하도록 강제했다. 이 전략은 JDBC에 의해 영향을받은 이며 예외 만 검사합니다. 그렇지만, 은, 최대 절전 모드에 의해 슬로우 된 모든 예외 가 치명적이기 때문에, 이것이 의미가없는 것이어서, 가 곧 명확 해졌습니다. 많은 의 경우 개발자가 에서 수행 할 수있는 최선의 방법은 정리하는 것입니다. 을 표시하고 응용 프로그램을 종료하십시오. 따라서, Hibernate 3.x로 시작하여, 최대 절전 모드로 을 던진 모든 예외는 체크되지 않은 런타임 예외의 하위 유형이며, 은 일반적으로 응용 프로그램의 단일 위치 에서 처리됩니다. 이것은 또한 Hibernate 템플리트 또는 랩퍼 API 을 폐기합니다.
관련 문제
- 1. Hibernate가 왜 열을로드하지 않는가?
- 2. 왜 Hibernate가 프록시 객체를 반환하나요?
- 3. Hibernate가 내 객체를 삭제하지 않습니다. 왜?
- 4. 사용자가 데이터를 변경했는지 확인
- 5. ParamArray 작동하지 않음으로 COM
- 6. 자바 강제 포착 RuntimeException?
- 7. MediaPlayer BroadcastReceiver RuntimeException
- 8. 왜 저장시 예외를 던지기보다는 Hibernate가 자동으로자를 수 있습니까?
- 9. Java 프로젝트에서 android.jar 사용 - RuntimeException Stub?
- 10. RuntimeException : com.google.gdata.client.authn.oauth.OAuthException : oauth_token이 존재하지 않습니다.
- 11. Hibernate가 변경을 반영하지 않음
- 12. Hibernate가 관련 객체를로드하지 않음
- 13. Hibernate가 NHibernate보다 나빠요?
- 14. Hibernate가 지속 호출을 무시하고 있습니까?
- 15. 사용자가 쿠키 값을 수동으로 변경했는지 확인합니다.
- 16. 레일스는 클라이언트가 session_id 쿠키를 변경했는지 확인합니다.
- 17. CustomException 체크 또는 체크되지 않은
- 18. 스칼라에서 체크되지 않은 제네릭 경고?
- 19. 유형 안전성 : 체크되지 않은 캐스트
- 20. 체크되지 않은 wpf 라디오 버튼
- 21. Google 리더 API가 항목을 읽지 않음으로 표시합니다.
- 22. link_to가 작동하지 않음으로 도우미 값을 제출 중입니다
- 23. Hibernate가 영구 집합을 찾지 못함
- 24. 네이티브 쿼리를 실행할 때 Hibernate가 훨씬 빠릅니다.
- 25. Android RuntimeException 디버깅 - 내 코드가 실행되기 전에
- 26. 새로운 RuntimeException ("컴파일 된 코드")가 발생합니까?
- 27. Java JAI JPEG 이미지 인코딩 RuntimeException
- 28. 자바 휴식 웹 서비스 RuntimeException WEB9033
- 29. 체크되지 않은 예외를 처리하는 방법은 무엇입니까?
- 30. 재실행 체크/체크되지 않은 예외 사용?
출처 ....... –
@ T.J. 네, 여기있을 게 좋을 것 같습니다. 나는 이것을 어딘가에서 읽었다는 것을 안다. 그래서 내가 그 근원을 발견한다면, 나는 그것을 여기에 올릴 것이다. – darioo
Hibernate 직원의 많은 어리석은 결정 중 하나. RuntimeExceptions는 Thread 내부에 던져지면 보이지 않습니다. 추적없이 Thread 만 죽이기 만합니다. RuntimeExceptions는 라이브러리에서 금지되어 있습니다. 이것은 매우 나쁜 디자인입니다. –