반응형
1. 정적 웹 페이지와 동적 웹 페이지
1) 정적 웹 페이지
- 가장 기본적인 웹 페이지
- 저장되어 있는 파일을 그대로 웹 브라우저에 전송해 출력
- 클라이언트가 어떤 형태로 요청하더라도 같은 페이지는 항상 동일한 모습을 보여줌
- 정적 웹 페이지 구동 방식
2) 동적 웹 페이지
- 동일한 페이지라 할지라도 그때그때 내용이 달라질 수 있는 웹 페이지
- 서버가 클라이언트의 요청을 해석하여, 가장 적절한 웹 페이지를 그때그때 생성해 보내주는 기술
- 클라이언트는 요청한 계정/시간/지역/언어/기타 입력 값에 따라 다른 결과를 받음
- 동적 웹 페이지 구동 방식
2. 자바 애플릿(Java Applet)
- 웹을 동적으로 만들기 위한 고대의 자바 기술
- 웹에서 실행되도록 설계된 자바 애플리케이션을 통째로 웹 브라우저로 전송한 후, 자바 가상 머신을 탑재한 웹 브라우저가 이를 실행하는 방식 → 전체 애플리케이션을 클라이언트에 다운로드한 후, 웹 브라우저에서 실행됨
- 속도, 보안, 유연성 등에서 한계가 있음
- 표준 기술인 HTML과 자바스크립트가 발전하여, 지금은 더 이상 지원하지 않는 기술
3. 서블릿(Servlet)
- 애플릿의 단점을 보완하기 위해 서버 측에서 실행
- 클라이언트의 요청을 받으면 서버에서 처리한 후, 응답으로는 결괏값만 보내줌
- 자바 파일(.java)을 컴파일한 클래스 파일(.class) 형태 → 이를 실행해주고 관리해주는 런타임을 ‘서블릿 컨테이너’라고 함
- 결과를 보여줄 HTML 코드를 일일이 자바로 생성/조합하다 보니 너무 많은 코드가 필요한 것이 한계 → 현재는 UI 요소가 없는 제어나 기타 처리 용도로 쓰임
- 위의 ‘동적 웹 페이지 구동 방식’에서 ‘전처리’부분을 서블릿이 담당
4. JSP (자바 웹 기술의 최종)
- 서블릿의 한계를 보완하기 위해, 기본을 HTML로 하고 필요한 부분만 자바 코드를 삽입하는 형태 탄생
- JSP 파일을 서블릿으로 변환하여 서블릿을 실행하는 방식 → 서블릿 기술도 여전히 사용 가능하기에, 용도에 따라 JSP나 서블릿 중 더 유리한 기술을 골라 쓰면 됨
- 한 번 서블릿으로 컴파일된 JSP 파일은 캐시되므로 실질적인 성능 저하 없이 개발 생산성과 유지보수 편의성을 모두 얻을 수 있음
- 클라이언트에 보여지는 결과 페이지를 생성할 때 주로 쓰임
- JSP 구동 방식 → JSP 파일을 서블릿으로 변환하여 서블릿을 실행함
* 서블릿과 JSP의 차이(표)
*JSP는 클라이언트에 보여지는 결과 페이지(=뷰)를 생성할 때 주로 쓰임
5. 오늘날의 웹 사이트
- 정적 웹 페이지가 더 만들기 쉽고 속도가 빠르며, 운영 비용이 저렴함 → 내용이 변하지 않는 콘텐츠라면, 정적 웹으로 구성하는게 합리적
- 실제 대부분의 웹 사이트나 웹 애플리케이션은 정적인 콘텐츠와 동적인 콘텐츠가 섞여 있음 → 오늘날의 웹 사이트: 정적 웹 페이지와 동적 웹 페이지가 혼합된 형태를 띰
- 오늘날의 일방적인 웹 구동 방식(자바 중심)
반응형
'자바(JAVA) > JSP 웹 프로그래밍 공부 (성낙현의 JSP 자바 웹 프로그래밍 참고)' 카테고리의 다른 글
JAVA/JSP 5. 내장 객체 - 내장 객체란? Request, Response 객체 (0) | 2023.03.23 |
---|---|
JAVA/JSP 4. JSP 파일 기본 구조 (2) | 2023.03.08 |
JAVA/JSP 2. JSP를 공부하기 위한 선행 지식 (0) | 2023.02.07 |
JAVA/JSP 1. 개발 환경 구축 - 마지막 추가 설정 (0) | 2023.02.01 |
JAVA/JSP 1. 개발 환경 구축 - JSP 예제 테스트 (0) | 2023.01.29 |