개요Spring MVC는 클라이언트의 입력 데이터를 도메인 객체로 자동 바인딩하고, 유효성 검증을 통해 데이터 무결성을 보장할 수 있는 기능을 제공@Valid 어노테이션과 BindingResult를 활용하면, 입력 데이터에 대한 제약 조건(@NotEmpty, @Email, @Size 등)을 손쉽게 검사할 수 있음검증 실패 시, BindingResult에 오류 정보를 담아 사용자에게 상세한 피드백을 제공하거나, REST API의 경우 JSON 형태로 에러 정보를 반환할 수 있음주요 어노테이션과 활용@Valid기능컨트롤러 메서드의 파라미터에 선언된 도메인 객체에 대해 필드별 검증 어노테이션을 실행하여 유효성 검사를 수행특징데이터 바인딩 이후에 자동으로 검증 로직이 실행검증 실패 시 BindingResult에..
개요Spring MVC는 컨트롤러 내에서 발생하는 예외를 효과적으로 처리할 수 있도록 다양한 예외 처리 어노테이션을 제공@ExceptionHandler를 통해 특정 예외를 개별 컨트롤러 내에서 처리할 수 있으며, @ControllerAdvice를 활용하면 전역적으로 일관된 예외 처리 로직을 적용할 수 있음이를 통해 코드의 가독성을 높이고, 예외 발생 시 사용자에게 친숙한 응답이나 뷰를 제공하여 시스템 안정성을 높일 수 있음추가로 로깅, 커스텀 예외 설계, REST API용 에러 응답 등 다양한 상황에 대응할 수 있는 전략을 함께 고려해야 함주요 어노테이션과 활용@ExceptionHandler기능컨트롤러 내에서 발생하는 특정 예외를 잡아 처리하는 메서드를 지정주요 속성value처리할 예외 클래스 지정예) ..
개요Spring MVC는 클라이언트의 HTTP 요청을 특정 컨트롤러 메서드에 매핑하여 처리할 수 있도록 다양한 어노테이션을 제공대표적으로 @RequestMapping은 클래스 및 메서드 레벨에서 URL 경로, HTTP 메서드, 미디어 타입 등 다양한 조건을 설정할 수 있는 범용 어노테이션Spring 4 이후에는 @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping 등 HTTP 메서드별 축약 어노테이션을 제공하여 코드의 가독성과 작성 편의성을 높임주요 어노테이션과 활용@RequestMapping기능클래스나 메서드에 URL, HTTP 메서드, 소비/생산 미디어 타입 등을 지정하여 요청을 매핑주요 속성value 또는 path매핑할 URL ..
개요Spring MVC 애플리케이션에서 @Controller와 @RestController는 클라이언트의 요청을 처리하는 역할을 함@Controller주로 JSP, Thymeleaf 등 템플릿 뷰를 사용하여 HTML 페이지를 렌더링할 때 사용메서드에서 반환한 값은 View Resolver를 통해 해석되어 뷰(템플릿)로 전달@RestControllerRESTful API 엔드포인트를 제공하며, 데이터를 JSON, XML 등으로 직렬화하여 클라이언트에 반환내부적으로 @Controller와 @ResponseBody가 결합된 형태로 동작역할 및 책임@Controller역할웹 애플리케이션에서 클라이언트의 요청을 받아 템플릿 기반의 뷰를 반환하는 역할을 담당주요 책임HTTP 요청 매핑 (예: GET, POST 등)..
MVC 구조의 개요Model-View-Controller (MVC)는 사용자 인터페이스와 비즈니스 로직을 분리하여 개발 효율성과 유지보수성을 높이는 소프트웨어 아키텍처 패턴이 패턴은 애플리케이션을 세 가지 주요 컴포넌트로 분리Model애플리케이션의 데이터와 비즈니스 로직을 담당하며, 상태와 동작을 정의View사용자에게 데이터를 표시하는 역할을 담당하며, UI 요소를 구성Controller사용자의 요청을 받아 처리하고, Model과 View 간의 상호작용을 중재각 컴포넌트의 역할 및 책임Model역할애플리케이션의 데이터 구조와 비즈니스 로직을 담당주요 책임도메인 객체와 데이터베이스 엔티티의 정의데이터 상태 관리 및 검증 로직 구현비즈니스 규칙 및 연산 처리특징데이터 중심의 컴포넌트로, 뷰와 컨트롤러에 독립..
패턴의 개요현대 스프링 애플리케이션은 관심사의 분리(Separation of Concerns)를 통해 유지보수성과 확장성을 높임그 핵심 설계 방식 중 하나가 Controller, Service, Repository 패턴애플리케이션의 각 계층이 명확한 역할을 가지고 상호작용하여, 기능의 응집도를 높이고 결합도를 낮추는 데 도움을 줌각 계층의 역할 및 책임Controller역할클라이언트의 요청을 받아 처리하고, 응답을 반환하는 역할주요 책임HTTP 요청 매핑 (GET, POST, PUT, DELETE 등)요청 파라미터 유효성 검사 및 바인딩Service 계층 호출을 통한 비즈니스 로직 처리 위임결과 데이터를 View 또는 JSON/XML 형식으로 반환특징프레젠테이션 계층(Presentation Layer)에..
서론스프링 프레임워크는 자바 기반 엔터프라이즈 애플리케이션 개발의 핵심 도구경량 컨테이너 기반의 설계와 IoC/DI, AOP, 트랜잭션 관리, 웹 MVC 등 다양한 모듈을 제공하여 개발 생산성과 유지보수성을 높임스프링 프레임워크의 구조와 특징기본 구조스프링은 모듈화된 구조로 구성되어 있어, 필요한 기능만 선택적으로 사용할 수 있음Core ContainerIoC/DI객체의 생성과 의존성 주입을 관리주요 컴포넌트BeanFactory, ApplicationContextAOP (Aspect-Oriented Programming)횡단 관심사 분리로깅, 보안, 트랜잭션 관리 등 공통 기능을 모듈화하여 핵심 로직과 분리Data Access/Integration데이터 처리JDBC, ORM(Hibernate, MyBat..
- Total
- Today
- Yesterday
- B+Tree
- MSA
- db
- 분할 정복
- 우테코
- 프리코스
- 우선순위 큐
- CPU 스케줄링
- 백트래킹
- 동적 프로그래밍
- Spring Boot
- 알고리즘
- TRIE
- k8
- 스프링
- Spring
- i/o모델
- 우아한 테크코스
- CS
- 운영체제
- HTTP
- 자바
- 그리디 알고리즘
- restful api
- devops
- 탐색 알고리즘
- 해시 테이블
- 자료구조
- Java
- 데이터베이스
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |