2024/07/09 6

[HTTP] HTTP 상태코드 (1XX, 2XX, 3XX, 4XX, 5XX)

HTTP 상태코드HTTP 상태코드란?클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능1xx (Informational): 요청이 수신되어 처리중2xx (Successful): 요청 정상 처리3xx (Redirection): 요청을 완료하려면 추가 행동이 필요4xx (Client Error): 클라이언트 오류, 잘못된 문법 등으로 서버가 요청을 수행할 수 없음5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함만약 미래에 모르는 상태 코드가 나타나면?클라이언트가 인식할 수 없는 상태코드를 서버가 반환하면?클라이언트는 상위 상태코드로 해석해서 처리미래에 새로운 상태 코드가 추가되어도 클라이언트를 변경하지 않아도 됨예)299 ??? -> 2xx (Successful)45..

WEB/HTTP 2024.07.09

[Java] 16. 예외 처리(Exception handling)(5) - 예외 되던지기, 연결된 예외

예외 처리(5) - 예외 되던지기, 연결된 예외예외 되던지기(exception re-throwing)앞서 말했던 것처럼 한 메서드에서 발생할 수 있는 예외가 여럿인 경우 몇 개는 try-catch문을 통해서 자체적으로 처리하고, 나머지는 선언부에 지정하여 호출한 메서드에서 처리하도록 함으로써 양쪽에서 나눠서 처리되도록 할 수 있다.심지어 단 하나의 예외에 대해서도 예외가 발생한 메서드와 호출한 메서드 양쪽에서 처리하도록 할 수 있다.이것은 예외를 처리한 후에 인위적으로 다시 발생시키는 방법을 통해서 가능한데, 이것을 예외 되던지기라고 한다.먼저 예외가 발생할 가능성이 있는 메서드에서 try-catch문을 사용해서 예외를 처리해주고 catch문에서 필요한 작업을 행한 후에 throw문을 사용해서 예외를 다..

[Java] 15. 예외 처리(Exception handling)(4) - finally블럭, 자동 자원 반환: try-with-resources문, 사용자 정의 예외

예외처리(4) - finally블럭, 자동 자원 반환: try-with-resources문, 사용자 정의 예외finally블럭finally 블럭은 try-catch문과 함께 예외의 발생여부에 상관없이 실행되어야할 코드를 포함시킬 목적으로 사용된다.try-catch문의 끝에 선택적으로 덧붙여 사용할 수 있으며, try-catch-finally 순서로 구성된다예외 발생시 : try->catch->finally예외 발생 X : try->finallyclass FinallyTest { public static void main(String args[]) { try { startInstall(); // 프로그램 설치에 필요한 준비를 한다. ..

[Java] 14. 예외 처리(Exception handling)(3) - 메서드에 예외 선언하기

예외 처리(3) - 메서드에 예외 선언하기메서드에 예외 선언하기지금까지 다룬 try-catch 사용법 말고 예외를 메서드에 선언하는 방법이 있다.메서드 선언부에 키워드 throws를 사용해서 메서드 내에서 발생할 수 있는 예외를 적어주기만 하면 된다.예외가 여러 개일 경우 쉼표(,)로 구분한다void method() throws Exception1, Exception2, ... ExceptionN { // method body}Exception 클래스를 메서드에 선언하면, 모든 종류의 예외가 발생할 가능성이 있다는 뜻이다.메서드의 선언부에 예외를 선언하므로써 메서드를 사용하려는 사람이 메서드를 사용하기 위해 어떠한 예외들이 처리되어져야 하는지를 쉽게 할 수 있다.기존의 많은 언어들은 메서드에 예외..

[Java] 13. 예외 처리(Exception handling)(2) - try-catch 문

예외 처리(2): try-catch문try-catch문try { // 예외가 발생할 가능성이 있는 문장} catch (Exception1 e1) { // Exception1이 발생했을 경우, 이를 처리하기 위한 문장을 적는다.} catch (Exception2 e2) { // Exception2이 발생했을 경우, 이를 처리하기 위한 문장을 적는다....} catch (ExceptionN eN) { // ExceptionN이 발생했을 경우, 이를 처리하기 위한 문장을 적는다.}하나의 try블럭 다음에는 여러 종류의 예외를 처리할 수 있도록 하나 이상의 catch 블럭이 올 수 있다.이 중 발생한 예외의 종류와 일치하는 단 한 개의 catch블럭만 수행된다...

[Java] 12. 예외 처리(Exception handling)(1) - 예외 처리란?

예외 처리(exception handling) - 예외 처리란?프로그램 오류컴파일 에러 : 컴파일 시에 발생하는 에러런타임 에러 : 실행 시에 발생하는 에러논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것그러면 에러와 예외의 차이점은 무엇인가요?에러 : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류예외 : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류예외 클래스의 계층 구조자바는 실행 시 발생할 수 있는 오류(Exception, Error)를 클래스로 정의했다.모든 클래스의 조상은 Object이므로 Exception과 Error클래스 역시 Object 클래스의 자손이다.예외 클래스는 다음과 같이 두 개의 그룹으로 나눌 수 있다.RuntimeException 클래스와 그 자손클래스..