HEAD FIRST JSP Servlet-51p

songi Jeon·2020년 8월 29일
0

Head First JSP Servlet

목록 보기
1/2

HEAD FIRST JSP Servlet


웹서버

웹서버의 역할

웹서버는 클라이언트로부터 요청을 받아, 요청한 것을 넘겨주는 일을 한다

사용자가 요청 > 웹서버에 전달 > 서버가 사용자가 요청한 것 넘겨줌 > 완료

이때, 서버에 요청한 것이 없으면?
'404 not found' == 요청한 것을 서버에서 찾을 수 없습니다.

100 - 109
메시지 정보
200 - 206
요청 성공
300 - 305
리다이렉션
400 - 415
클라이언트 에러
500 - 505
서버에러

  • 서버 : 물리적인 하드웨어, 서버 애플리케이션 소프트웨어 전체

클라이언트

웹 클라이언트는 사용자가 서버에 요청을 보낼 수 있는 기능을 제공한다. 요청을 보내고 난 다음, 서버가 보내온 요청의 결과를 화면에 출력하는 일도 클라이언트의 역할이다.

  • 클라이언트 : 사용자(사람) 또는 브라우저라는 응용프로그램을 뜻함
  • 브라우저 : 익스플러러, 모질라, 크롬 같은 소프트웨어를 뜻함
    역할 : HTML을 읽어서(파싱) 화면에 보여줌

HTML과 HTTP

HTML

  • 클라이언트 요청 > 서버가 브라우저에세 컨텐츠 타입 알려줌 >브라우저는 이를 기초로 화면에 출력을 준비
  • HTML은 브라우저가 화면에 내용을 표시할 방법 지정

HTTP

  • HTTP는 웹 상에서 클라이언트와 서버가 대화하기 위한 규약, 언어
  • 구조: 요청, 응답
  • 클라이언트가 HTTP로 요청을 보내면 서버가 HTTP로 응답
  • 웹 서버는 클라이언트로 HTML 페이지를 HTTP로 보냄

사진 설명
: form은 서블릿으로 보낼 요청의 내용
사용자에게 입력값을 받아 이를 서버에게 전달하는 역할 <form>태그

HTTP메서드

HTTP에는 메서드가여럿 있고 그 중 가장 많이 있음
그 중 가방 많이 사용하는 것은 GET, POST

GET

  • 사용자가 링크 클릭 > 브라우저는 서버에게 HTTP GET 요청을 보냄(클릭한 페이지를 요청)
  • 단순한 요청은 GET
  • 단순히 서버에게 자원을 요청하는 것 뿐
  • 서버로부터 뭔가를 돌려(get back) 받는다는 것

POST

폼에 정보를 입하고 submit 버튼을 클릭 > 브라우저는 서버에게 HTTP POST 요청을 보냄(사용자가 입력한 값을 함께 보냄)

  • 정보를 함께 보내려명 POST
  • GET++
  • POST는 자원을 요청할 때 필요한 정보를 함께 넘겨줌

그외 사용되는 메서드

HEAD, TRACE, PUT DELETE, CONNECT


파싱 : (=구문분석) 문장을 그것을 이루고 있는 구성 성분으로 분해하고 그들 사이의 위계 관계를 분석하여 문장의 구조를 결정하는 것을 말한다.

오버헤드(overhead)는 어떤 처리를 하기 위해 들어가는 간접적인 처리 시간 · 메모리 등을 말한다.


HTTP GET

GET 보다 POST를 사용해야 하는 이유
1. GET으로 보내는 글자 수에 제한이 잇다(서버에 따라 차이 있음)
검색 입력칸에 너무 많은 양을 써 넣으면 get이 작동하지 않을 수 있음.
2. GET의 데이터 전송 방식은 브라우저 주소란에 기입하는 URL뒤에 붙이는 식으로 사용. 그러므로 중요한 데이터가 화면에 노출될 수 있음. 패스워드 같은 데이터는 GET으로 하지 않아야 함.
3. GET으로 전송하는 URL은 즐겨찾기에 등록할 수 있지만, POST는 대부분 그렇지 못함.(브라우저에 따라 폼의 서밋(submit) 결과를 즐겨찾기에 등록할 수도, 못할 수도 있다.)

주소분석

https://shopping.naver.com/market/necessity/category
?menu=10003627&luckyId=2744152
? : 경로(path)와 파라미터를 구분하는 구분자. get으로 넘길 수 있는 데이터양에 제한 있음. 이 경로는 누구나 볼 수 있음

GET 해부

URL에 추가되는 자원에 대한 경로파라미터는 요청라인을 구성하는 요소

post 해부

예를 들어, 사용자가 자신의 정보를 폼에 입력하여 서버로 전송하면, 서버는 이 정보를 데이터베이스에 저장한다는 시나리오에서, 서버로 보내는 데이터를 메세지 몸체(Massage Body) 또는 짐(payload)이라고 부름.
파라미터는 메세지 몸체에 기술함. get에서는 요청라인에다가 표기해 길이 제한이 있었으나 post는 제한이 없음.

HTTP 응답 해부

서버가 클라이언트에세 보내는 응답.
구조 : 헤더, 몸체
헤더 : 사용된 프로토콜이 뭔, 보내준 요청이 성공 했는지, 몸체에 포함된 컨텐츠의 종류는 무엇인지 등이 들어있음.
몸체 : HTML과 같은 컨텐츠가 들어있음. 브라우저는 이 정보를 화면에 출력


distinc 중복제거

mariaDB5.5 - 한글 오류

profile
비전공자가 백엔드 개발자 도전하는 블로그

0개의 댓글