전체 글

전체 글

    [Inflearn] 스프링 MVC (7) HttpMessageConverter

    [Inflearn] 스프링 MVC (7) HttpMessageConverter

    김영한 강사님의 '스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술' 강의 정리 2022.02.06~02.07 진행 강의를 듣고 개인적으로 정리한 글입니다. 코드와 그림 출처는 김영한 강사님께 있습니다. 문제 있을 시 알려주세요. 언제 HttpMessageConverter 가 적용되는가 스프링 MVC는 다음의 경우에 viewResolver 대신 HttpMessageConverter를 적용한다. HTTP 요청 : @RequestBody, HttpEntity(RequestEntity) HTTP 응답 : @ResponseBody, HttpEntity(ResponseEntity) HttpMessageConverter 동작과정 HTTPMessageConverter 인터페이스를 간략히 알아보자면, 다음과 같다. p..

    [Inflearn] 스프링 MVC (6) HTTP 응답

    김영한 강사님의 '스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술' 강의 정리 2022.01.31~02.01 진행 강의를 듣고 개인적으로 정리한 글입니다. 코드와 그림 출처는 김영한 강사님께 있습니다. 문제 있을 시 알려주세요. HTTP 응답 HTTP에서 응답 데이터를 만드는 방식은 크게 3가지 이다. 정적 리소스 뷰 템플릿 사용 HTTP 메시지 사용 1. 정적 리소스 응답 - HTML 정적 리소스 응답이란, 해당 파일을 변경 없이 그대로 서비스하는 것을 말한다. 웹 브라우저에 정적인 HTML, CSS, JS를 제공할 때는 정적 리소스를 사용한다. 스프링 부트에서 src/main/resources는 클래스 패스의 시작 경로로, 리소스를 보관하는 곳이다. 스프링 부트는 클래스패스의 다음 디렉토리에 있는 ..

    직렬화(Serialize)와 역직렬화(Deserialize) - 작성중

    JSON은 Javascript Object Notation의 약자로 자바스크립트의 객체처럼 키:값으로 구성되었다고 붙여진 이름이다. 클라이언트와 서버 간 HTTP 통신을 위한 텍스트 데이터 포맷이다. 키와 값은 `""`로 감싸야 한다. 각 객체를 배열로 묶을 수 있다. 직렬화 객체에 저장된 데이터를 I/O 스트림에 출력하기 위해 연속적인(serial) 데이터로 변환하는 것 데이터를 전송하거나 받을 때 byte 문자열이어야 한다. 따라서 객체를 byte 문자열로 바꾸는 것을 말한다. 객체 -> 문자열, JSON 데이터 역직렬화(Deserialize) I/O 스트림에서 데이터를 읽어서 객체를 만드는 것 데이터를 전송받아 이런저런 처리를 하기 위해서는 객체로 변환해야 편리하다. 문자열,JSON 데이터 -> 객체

    [PS] 백준 1924번 2007년

    [PS] 백준 1924번 2007년

    문제 예제 풀이 이 문제는 영 모르겠어서 다른 분의 풀이를 참고했다. 입력받은 날짜의 요일을 출력하는 문제이고, 월마다의 일수는 다소 다르게 정해져있다. 따라서 요일을 계산하기 위해서는 해당 날짜 이전달까지의 총 일수까지 고려해서 요일을 세야한다. 예를 들어 5월 10일의 경우, (1월부터 4월까지의 총 일수 + 10일)을 7로 나눈 나머지를 계산해서 나머지가 1~6인 경우 순서대로 월~토요일, 나머지가 0인경우 일요일로 간주한다. 즉 5월 10일은 총 일수가 31+28+31+30 +10일= 130일이므로 130 % 7 = 2 이다. 그래서 화요일로 간주한다. 더 쉬운 예시로, 1월 3일은 (총 일수 3) % 7 = 3 이므로 수요일로 간주한다. 따라서 월마다의 총 일수가 저장된 배열을 선언하고, 결과에..

    [Inflearn] 스프링 MVC (5) HTTP 요청

    [Inflearn] 스프링 MVC (5) HTTP 요청

    김영한 강사님의 '스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술' 강의 정리 2022.01.28 진행 강의를 듣고 개인적으로 정리한 글입니다. 코드와 그림 출처는 김영한 강사님께 있습니다. 문제 있을 시 알려주세요. 💡 실무 핵심 정리 요청 파라미터 조회 (GET, POST) : @RequestParam, @ModelAttribute HTTP 메시지 바디를 직접 조회 : @RequestBody 1. HTTP 요청 클라이언트에서 서버로 요청 데이터를 전달하는 방식은 주로 3가지가 있다. GET - 쿼리 파라미터 전송 POST - HTML Form 전송 (메시지 Body에 쿼리 파라미터 형식으로 담음) HTTP 메시지 바디에 데이터를 직접 담아서 요청 HTTP API에서 주로 사용 (주로 JSON) 2...