[Web] 웹 기본 지식 정리

YEONU LEE·2023년 3월 13일
0

웹 어플리케이션 (Web Application)

웹 어플리케이션, 인터넷 및 웹 브라우저에서 이용할 수 있는 응용 프로그램을 말함

웹 브라우저 - Tap(윈도우) = 사용자 ←→ 서버

GET vs POST 방식의 차이

GET

  • 주소창에 직접 원하는 데이터를 적거나 링크를 클릭해 호출
  • 호출시 필요데이터 (&, ?) 로 전송, 특정한 정보 조회시에 많이 사용함
  • 중요 데이터나 정보를 전송하는 방식으로는 부적합하다 (주소창에 직접적으로 노출되어지기 때문에)

POST

  • 입력화면에서 필요한 내용을 작성후 전송(Submit) 을 클릭해 호출
  • 주소와 데이터를 따로 보내는 방식 (회원가입, 로그인 등)

Servlet 에서의 GET, POST

doGet() - GET 방식으로 정보전달 시 호출

doPost() - POST 방식으로 정보전달 시 호출

Request와 Response

Request

  • 브라우저가 서버에 데이터를 요청하는 것

Response

  • 서버는 ‘응답’ 데이터를 만들어 브라우저로 보냄

정적 데이터와 동적 데이터

서버는 정적 데이터와 동적 데이터를 구분하여 처리한다.

정적 데이터

  • 항상 동일하게 고정된 데이터를 전송하는 방식의 파일을 의미
  • HTML, CSS 등이 있다.

동적 데이터

  • 매번 필요할 때 다른 데이터를 동적으로 구성해서 전송하는 방식의 파일
  • WAS 웹 어플리케이션 서버 ⇒ 서버 사이드 프로그래밍
    • EX) Tomcat

HTTP (Hyper Text Transfer Protocol)

프로토콜(Protocol) 이란?

  • 데이터 교환 약속을 의미함
  • https://www. . com → https (프로토콜) www..com 호스트(도메인)

HTTP 메시지는 헤더와 바디로 구성되어진다

  • Request header / Request Body
  • Response header / Response Body

무상태(Stateless)

웹은 지난번 상태를 기억하지 않는다.

이를 처리하기 위해 쿠키(Cookie), 세션(Seission), 스토리지(Stroage) 방식을 사용한다.

서블릿(Servlet)

개발자가 서버에서 처리되어야 하는 기능의 일부만 작성할 수 있도록 만들어진 JAVA EE 기술 스펙의 일부를 의미

기존 JAVA프로그래밍과 다른점

  • 객체를 생성 또는 호출 주체가 사용자가 아님
  • 서블릿 컨테이너(Tomcat)이 처리
    • ⇒ main() 이용하여 프로그램을 실행하지 않는다

쿼리스트링

특정한 URL에 포함된 추가적인 데이터

GET의 경우 키(key) = 값(value)의 형태로 구성

  • 동일한 키가 여러번 나올 수 있다
  • 문자열로만 전송이 가능하다

POST의 경우 동일한 문자열이지만 전송되는 위치가 다르다

  • 서버사이드 프로그래밍에서는 쿼리스트링에 있는 키를 파라미터라고 부른다

Servlet vs JSP

Servlet - Java 코드를 자유롭게 사용할 수 있다. 상속, 조합, 모든 처리가 가능하다

JSP - 복잡한 화면 구성을 위한 처리에 유용하다.

Servlet = JAVA코드 + HTML

JSP = HTML + JAVA코드

profile
Kongju National Univ 컴퓨터 공학 전공

0개의 댓글