Cute Running Puppy
본문 바로가기
728x90

개발일기89

Spring MVC에서의 예외 처리 기법 예외 처리 방법 @ExceptionHandler 컨트롤러 내에서 특정 예외를 처리하기 위해 사용한다. 이 어노테이션을 메서드에 적용하여 해당 예외가 발생했을 때 특정한 응답을 반환하거나 예외를 처리할 수 있다. @ControllerAdvice 전역적인 예외 처리를 정의할 수 있다. 이 어노테이션이 적용된 클래스는 모든 컨트롤러에서 발생하는 예외를 처리하는 메서드를 가질 수 있다. @ControllerAdvice + ExceptionHandler 특정 예외에 대한 전역적인 처리와 특정 컨트롤러에서 발생하는 예외에 대한 처리를 동시에 수행할 수 있다. 일부 에러만 처리하고 싶을 경우에는 따로 범위설정이 가능하다. @ResponseStatus 특정 예외가 발생했을 때 반환되는 HTTP 응답 상태 코드를 지정할.. 2023. 5. 31.
의존성 주입(Dependency Injection, DI) Dependency(의존성)란? “A가 B를 의존한다.” 의존대상 B가 변하면, 그것이 A에 영향을 미친다. 즉, B의 기능이 추가 또는 변경되거나 형식이 바뀌면 그 영향이 A에 미친다. 의존성 주입은 의존 관계를 객체의 외부에서 결정하고, 필요한 객체를 주입하여 사용하는 방법이다. DI(의존성 주입) 세 가지 방식 생성자 주입(Constructor Injection) 객체를 생성할 때 의존하는 객체를 생성자의 매개변수로 전달하여 주입한다. 설정 주입(Setter Injection) 의존하는 객체를 설정 메서드(setter)를 통해 주입한다. 인터페이스 주입(Interface Injection) 의존하는 객체를 특정 인터페이스를 구현한 객체로 주입한다. DI(의존성 주입)의 장점 느슨한 결합(Loose .. 2023. 5. 31.
REST API란? REST API란? Representational State Transfer의 약자로, 웹 서비스를 구축하기 위한 아키텍처 스타일이다. REST는 자원을 이름(자원의 표현)으로 구분해 해당 자원의 상태를 주고 받는 모든 것을 의미한다. 상태 전달 (Stateless) 서버는 각 요청을 독립적인 것으로 처리하며, 클라이언트의 상태를 서버에 저장하지 않는다. 상태 정보는 요청마다 필요한 데이터를 함께 전달하여 처리한다. REST 구성 요소 자원(Resource): URI URI(Uniform Resource Identifier)를 통해 자원을 고유하게 식별하고, CRUD(Create, Read, Update, Delete) 작업을 수행한다. 행위(Verb): HTTP Method HTTP 프로토콜의 Meth.. 2023. 5. 30.
객체지향 프로그래밍(OOP) 객체지향 프로그래밍(OOP)이란? 프로그래밍에서 필요한 데이터를 추상화하여 객체라는 단위로 표현하고, 객체들 간의 상호작용을 중심으로 프로그램을 구성하는 개발 방법이다. 객체 지향 프로그래밍의 장점은 코드의 재사용을 통해 반복적인 코드를 최소화하고, 코드를 최대한 간결하게 표현할 수 있어 코드의 변경을 최소화하고 유지보수를 하는 데 유리하다. 객체지향 프로그래밍의 4가지 특징 추상화(Abstration) 객체의 공통적인 속성과 기능을 추출하여 정의하는것을 의미한다. 캡슐화 (Encapsulation) 객체의 상태(data)와 행위(method)를 하나로 묶고, 외부에는 내부 구현을 감추는 것을 의미한다. 캡슐화는 접근 제어자를 통한 접근에 제한을 두며, 객체의 내부 동작 방식을 숨기고 외부에서 사용하기 .. 2023. 5. 30.
728x90