본문 바로가기

전체 글389

[MVC] 파일 업로드 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 서블릿과 파일 업로드1서블릿을 통한 파일 업로드 방식을 살펴본다. ServletUploadControllerV1package hello.upload.controller;import lombok.extern.slf4j.Slf4j;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;impor.. 2025. 12. 21.
토익 공부 기록 (2020.12 ~ 2021.08) 2020년 12월부터 2021년 8월까지 총 15회 응시 첫 시험은 515점이었고, 마지막 시험에서 855점으로 마무리했다. 8개월 동안 꾸준히 공부하는 습관을 들이면서, 매달 시험을 보며 점수가 조금씩 오르는 걸 확인할 수 있었다. 지금은 만료된 점수지만, 결국 점수보다 더 큰 성과는 꾸준히 공부하는 습관을 만든 것이었다. 2025. 12. 4.
[MVC] 스프링 타입 컨버터(2) 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 포맷터 - FormatterConverter는 입력과 출력 타입에 제약이 없는 범용 타입 변환 기능을 제공한다. 하지만 일반적인 웹 애플리케이션 환경에서는 불린을 숫자로 바꾸는 것 같은 범용 변환보다, 문자를 객체로 변환하거나 객체를 문자로 변환하는 경우가 훨씬 많다. 예를 들어 화면에 숫자를 출력할 때 Integer 타입의 1000을 "1,000"처럼 쉼표를 넣어 표현하거나, 반대로 "1,000" 문자열을 숫자 1000으로 변환하는 경우가 있다. 또는 날짜 객체를 "2021-01-01 10:50:11" 형식으로 출력하거나, 이 문자열을 다시 날짜 객체로 변환하기도 한다. Locale과 현지화숫자나 날짜의 표현 방식은 Locale(현지화.. 2025. 11. 26.
[MVC] 스프링 타입 컨버터(1) 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 소개웹 애플리케이션 개발을 하다 보면 문자를 숫자로, 숫자를 문자로 변환하는 등 타입 변환이 자주 필요하다. 스프링은 이런 변환 과정을 자동으로 처리해 주는 타입 컨버터 기능을 제공한다. 1. 기본 예시: 문자 → 숫자 변환@GetMapping("/hello-v1")public String helloV1(HttpServletRequest request) { String data = request.getParameter("data"); // 문자 타입 Integer intValue = Integer.valueOf(data); // 숫자 타입으로 변환 return "ok";}요청: http://localhost:8080/.. 2025. 10. 26.
[MVC] API 예외 처리(2) 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 스프링이 제공하는 ExceptionResolver1스프링 부트 기본 ExceptionResolver 등록 순서스프링 부트는 HandlerExceptionResolverComposite 안에 아래와 같은 Resolver들을 등록한다.1. ExceptionHandlerExceptionResolver@ExceptionHandler 애노테이션을 처리API 예외 처리의 대부분을 담당2. ResponseStatusExceptionResolver예외에 따른 HTTP 상태 코드 변환@ResponseStatus, ResponseStatusException 처리3. DefaultHandlerExceptionResolver스프링 내부 기본 예외 처리 (우선.. 2025. 9. 22.
[MVC] API 예외 처리(1) 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. API 예외처리 - 시작HTML 페이지라면 단순히 4xx, 5xx 오류 페이지를 띄우면 충분하다. 하지만 API는 다르다. API는 오류 상황에서도 클라이언트가 이해할 수 있는 JSON 응답을 내려주어야 한다. 단순히 오류 페이지를 보여주는 것이 아니라, 각 오류 상황에 맞는 JSON 스펙을 정의해야 한다. 따라서 API 예외 처리 방식도 서블릿 오류 페이지 방식을 활용하되, JSON 형태로 응답을 내려주도록 확장해야 한다. WebServerCustomizer 동작스프링 부트의 WebServerCustomizer를 활용하면 예외 발생 시 호출할 오류 페이지를 지정할 수 있다.@Componentpublic class WebServerCus.. 2025. 9. 10.