반응형

 

 

 김춘장이의 위키백과 - 나만의 공부 기록 Tistory ❤ 

 

 


 

 

정말 스프링 3일차까지 너무나 힘든 악몽이었다.
나 자신과의 싸움이란걸 느낀 나날이였다.
이렇게 습득이 느린 내가 아닌데 , 왜이러지 하면서 너무 감을 잠을 수 없었다.
크리스마스 연휴 때 빡공을 하겠다며 다짐을 하며 열심히 적기 시작했다.
선생님이 쳐주는 코드를 따라 치는 게 아닌, 이해하고자 노력했다.
그래서 코드도 따라 치지 않았고, 인텔리제이에서 실습 자체를 일단 하지 않았다.
머리가 이해해야 칠 수 있다고 생각했었다(사실  이건 경기도 오산이었음)
지금 작성해 놓은 글들을 보니 너무 귀엽다 하하 
앞으로도 더 귀여울 예정이지만;ㅋ..

 

 

 

수업 전 이야기

Today 수업 전 중요 포인트
스프링은 흐름을 이해해야 한다.
어떤 로직으로 흐르는지 잘 이해해야 설계가 가능하다
앞으로 우리가 공부하고 진행할 프로젝트는
MVC2 패턴을 사용하고 CRUD 기능을 구현한 게시판이다
이러한 것을 만들기 위해서는 아키텍처의 흐름과 로직을 이해해야 한다

 

 

 

 

 

 

 

 

스프링프레임워크 아키텍처 (진짜 중요)

Pasted image 20231227201047.png

오늘의 공부 단어

  1. Client, Server, request, response
  2. Form Tag, a Tag, URL , Method, parameter
  3. Beans, Container, Component, Dependency, MVC, Mybatis

(3번째 단어는 다음 포스팅에 하겠다..)

 

 

 

 

 

 

 

Client와 Server의 통신

우리가 보는 웹브라우저 화면, 통신할 때 시작하는 시작점은 클라이언트단이다.
클라이언트가 서버와 통신을 할 때엔 HTTP 프로토콜로 통신을 하며
클라이언트의 요청에 따라 html , css , javascript 등 화면에 보여줄 수 있도록 하는 것을 브라우저에게 전달하면
브라우저는 서버에서 전달받은 데이터로 렌더링을 하여 화면에 보여준다
여기에서 클라이언트가 서버에게 요청하는 신호는 Request(SYN)라고 하고
서버에서 클라이언트에게 보내는 연결 종료 신호는 Response(FIN)라 한다

 

 

 

 

Client의 요청

서버단의 컨트롤러는 클라이언트에서 보내는 요청데이터 중 3가지를 먼저 분석한다

🚫 매우 중요 진짜 개중요 정말 중요 🚫

  1. URL
  2. method : get, post…(더 많음)
  3. parameter : object , key&value
    매핑이 안될 경우 (404…)

요청 URL : 요청 대상 식별, 어떤 자원을 타겟팅해서 요청한 지 피아식별함
method : 주어진 리소스에 수행하길 원하는 행동을 나타내는 것
parameter : 데이터의 값

 

Pasted image 20231227204115.png


상품 문의 게시판으로 이동하기 위한 html 소스이다
여기에 a 태그를 넣었는데 a = href = “/요청경로” 라고 보면 된다
그리고 method는 GET 방식으로 전달한다는 의미이다

 

 

 

 

 

HTTP Method

GET 는 가져온다는 느낌이고
POST 는 수행한다는 느낌이다

Pasted image 20231227210016.png

 

Pasted image 20231227210024.png

 

 

 

 

GET방식의 통신

Pasted image 20231227204333.png


주소창에 보면 저렇게 key와 value가 노출된다.
그리고 크롬에 개발자 모드 > 네트워크 > Headers에서도 확인이 가능하다

 

Pasted image 20231227204507.png

  • 데이터가 요청 헤더에 포함되어 전송된다
  • 서버에서 어떤 데이터를 가져와서 보여줄 때 사용한다
  • 어떤 값이나 내용, 상태 등을 바꾸지 않는 경우 사용
  • 민감한 데이터를 보내면 안 됨!
  • 멱등성 O , 캐시 가능

 

 

 

 

 

POST방식의 통신

Pasted image 20231227204548.png


html문서에 숨겨져서 parameter가 전달된다
GET 방식과 다르게 값이 나오지 않는다
이전과 똑같이 개발자 모드를 켜서 보면 POST방식이라고 되어있고
탭 중 Payload가 생겼다
Payload에 들어가서 보면 값을 확인할 수 있다

Pasted image 20231227204800.png

 

Pasted image 20231227204843.png

  • 데이터가 요청 바디에 포함되어 전송된다
  • 브라우저에 기록이 남지 않는다
  • 프락시는 POST 요청을 서버에 바로 통과시키는 특징이 있다
  • 멱등성 X , 캐시 가능

자세한 메서드 참고 : https://developer.mozilla.org/ko/docs/Web/HTTP/Methods

반응형
유리쯔의일상