[스프링부트 블로그 프로젝트] 10, 11, 12, 13, 14강

오젼·2024년 1월 29일
0

10강 http1.1 요청방식

https://getinthere.tistory.com/19

통신방법 4가지

  • GET 데이터 요청 - Select
  • POST 데이터 추가 - Insert
  • PUT 데이터 수정 - Update
  • DELETE 데이터 삭제 - Delete

11강 stateless란

stateless

요청시마다 스트림을 연결해서 data를 주고 받는 방식
서버부하가 적음

반대개념 stateful 방식 : 채팅창에 쓰임

stateless의 문제: session을 어떻게 유지할 것인가 왜냐하면 응답이 끝나면 연결이 끊기는 방식이 stateless니까. 앞으로 배워나갈 것

12강 MIME타입이란

패킷 스위칭 vs 서킷 스위칭

서킷 스위칭패킷 스위칭
새로운 연결을 만들어서 한 번에 실어 보냄쪼개서 보냄. 기존 연결에 패킷을 이어서 보냄

http에선 패킷 스위칭 방식을 쓴다.
패킷은 데이터 혼잡이 적은 경로로 보내진다. 그래서 순서대로 날라가지 않을 수 있음.
그래서 헤더에 패킷 번호를 넣어서 보낸다.
그래야 받는 입장에서 패킷을 올바르게 조립할 수 있으니까

MIME타입

https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types

13강 http요청 실습1

@RestController vs @Controller

@RestController - 응답을 data로
@Controller - 응답을 html로

인터넷 브라우저 요청은 GET요청밖에 안 된다

post, put, delete 테스트 해보려면 postman으로 해봐야 됨

14강 http요청 실습2

Get

get 방식 요청은 쿼리스트링으로

@RequestParam

파라미터를 사용해주려면 RequestParam 어노테이션을 사용해 줘야 함

Post

post 방식은 body에 담아서 요청

@PostMapping("/http/post")
public String postTest(Member m) {
    return "post 요청" + ", " + m.getId() + ", " + m.getUsername() + ", " + m.getEmail();
}

이런 식으로 사용해줄 수도 있고 이 땐 x-www-form-urlencoded 포맷으로 보낸 데이터 받아서 사용 가능

@RequestBody

RequestBody 어노테이션을 사용해줄 수도 있음. raw포맷으로 보낸 데이터 사용 가능. raw 데이터는 MIME type이 text/plain

json 포맷으로 보내면 MIME type은 application/json

이런식으로 사용해줄 수 있음

MessageConverter

위에 있는 내용을 누가 처리해주냐면 MessageConverter 클래스가 자동으로 처리해주는 거임.

0개의 댓글