[Spring DB] JDBC Template
Back-End/Spring2024. 3. 29. 00:27[Spring DB] JDBC Template

공식 메뉴얼 https://docs.spring.io/spring-framework/docs/current/reference/html/data-access.html#jdbc- JdbcTemplate DataSource 설정 JDBC Template 사용을 위해서는 데이터베이스와의 연결을 관리하는 DataSource를 설정해야 한다. application.properties spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.username=yourName spring.datasource.password=yourPassword 이렇게 하면 내부적으로 DataSource 빈을 자동으로 생성하고 구성합니다. JdbcTemplate 인스..

[Spring MVC] 파일 업로드
Back-End/Spring2024. 3. 25. 00:29[Spring MVC] 파일 업로드

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 파일 업로드 일반적으로 사용하는 HTML Form을 통한 파일 업로드를 이해하려면 먼저 폼을 전송하는 다음 두 가지 방식의 차이를 이해해야 한다. HTML 폼 전송 방식 application/x-www-form-urlencoded multipart/form-data application/x-www-form-urlencoded 방식 application/x-www-form-urlencoded 방식은 HTML 폼 데이터를 서버로 전송하는 가장 기본적인 방법이다. Form 태그에 별도의 enctype 옵션이 없으면 웹 브라우저는 요청 HTTP 메시지의 헤더에 다음 내용을 추가한다. →Content-Type: appl..

[Spring MVC] 스프링 타입 컨버터
Back-End/Spring2024. 3. 24. 00:15[Spring MVC] 스프링 타입 컨버터

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 스프링 타입 컨버터 스프링 프레임워크에서 타입 컨버터(Type Converter)는 한 타입의 객체를 다른 타입으로 변환할 때 사용되는 메커니즘이다. 스프링 MVC에서는 클라이언트로부터 받은 문자열 데이터를 컨트롤러의 파라미터나 필드에 지정된 타입의 객체로 변환할 필요가 자주 있다. 예를 들어, URL 경로에서 가져온 문자열을 날짜 객체나 열거형, 심지어는 사용자 정의 타입으로 변환해야 할 때가 그러하다. 이럴 때 스프링의 타입 컨버터 기능이 유용하게 사용된다. @GetMapping("/hello-v2") public String helloV2(@RequestParam Integer data) { System...

[Spring MVC] API 예외 처리
Back-End/Spring2024. 3. 23. 18:14[Spring MVC] API 예외 처리

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 기본 API 예외 처리 예외가 발생하면 어떠한 경로로 다시 요청할지 정의 WebServerCustomizer @Component public class WebServerCustomizer implements WebServerFactoryCustomizer { @Override public void customize(ConfigurableWebServerFactory factory) { ErrorPage errorPage404 = new ErrorPage(HttpStatus.NOT_FOUND, "/error-page/404"); //errorPage404 호출 ErrorPage errorPage500 = new ..

구글 클라우드 비전 OCR API 스프링 부트에서 사용
Back-End/Spring2024. 3. 22. 00:37구글 클라우드 비전 OCR API 스프링 부트에서 사용

구글 클라우드 비전 플랫폼 설정 API 및 서비스 구글 클라우드 의 콘솔 창으로 들어가면 왼쪽 상단의 버튼을 눌러 API 및 서비스 - 사용자 인증 정보로 들어간다. 사용자 인증 정보 창에서 사용자 인증 정보 만들기 버튼을 누른다. API 키 를 추가한다. API 활성화 이후 API 및 서비스 - 사용 설정된 API 및 서비스 버튼을 클릭한다. Clould Vision API 를 사용 버튼을 누른다. IAM 및 관리자 IAM 및 관리자 - 서비스 계정 버튼 클릭 아래의 정보들을 입력한다. 아래의 부분은 선택사항이다. 실험 결과 이 부분을 일부 누락해도 OCR API를 사용하는데 지장이 없었다. 만든 계정의 키 관리 버튼을 누른다. 새 키 만들기를 누른 뒤, JSON 파일을 다운로드 받는다. 스프링 부트 ..

[Spring MVC] 예외 처리와 오류페이지
Back-End/Spring2024. 3. 21. 00:25[Spring MVC] 예외 처리와 오류페이지

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 서블릿 예외 처리 서블릿은 다음 2가지 방식으로 예외 처리를 지원한다. Exception (예외) response.sendError(HTTP 상태 코드, 오류 메시지) Exception(예외) 자바 직접 실행 자바의 메인 메서드를 직접 실행하는 경우 main 이라는 이름의 쓰레드가 실행된다. 실행 도중에 예외를 잡지 못하고 처음 실행한 main() 메서드를 넘어서 예외가 던져지면, 예외 정보를 남기고 해당 쓰레드는 종료된다. 웹 애플리케이션 웹 애플리케이션은 사용자 요청별로 별도의 쓰레드가 할당되고, 서블릿 컨테이너 안에서 실행된다. 애플리케이션에서 예외가 발생했는데, 어디선가 try ~ catch로 예외를 잡..

[Spring MVC] ArgumentResolver 를 이용한 @Login 어노테이션 구현
Back-End/Spring2024. 3. 20. 00:42[Spring MVC] ArgumentResolver 를 이용한 @Login 어노테이션 구현

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다.@Login 애노테이션이 있으면 직접 만든 ArgumentResolver 가 동작해서 자동으로 세션에 있는 로그인 회원을 찾아주고, 만약 세션에 없다면 null 을 반환하도록 개발 HomeController - 추가기존@GetMapping("/")public String homeLoginV3Spring( @SessionAttribute(name = SessionConst.LOGIN_MEMBER, required = false) Member loginMember, Model model) { //세션에 회원 데이터가 없으면 home if (loginMem..

[Spring MVC] HTTP MessageConverter, RequestMapping HandlerAdapter
Back-End/Spring2024. 3. 19. 00:00[Spring MVC] HTTP MessageConverter, RequestMapping HandlerAdapter

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. HTTP MessageConverter HTTP MessageConverter는 스프링 프레임워크에서 HTTP 요청 및 응답 본문을 객체로 변환하거나 객체를 HTTP 응답 본문으로 변환하는 역할을 하는 구성 요소이다. 클라이언트와 서버 간의 데이터 교환은 주로 JSON, XML 등의 형식으로 이루어지는데, MessageConverter는 이러한 데이터 형식을 애플리케이션 내부에서 사용하는 객체로 쉽게 변환해주거나, 반대로 객체를 이러한 데이터 형식으로 변환해주는 작업을 담당한다. 뷰 템플릿으로 HTML을 생성해서 응답하는 것이 아니라, HTTP API처럼 JSON 데이터를 HTTP 메시지 바디에서 직접 읽거나 ..

image