위 글은 해당 카테고리의 수업 강의 자료를 정리한 것입니다.
1. 웹과 동적 컨텐츠
1.1 웹의 동작
- 요청: 클라이언트에서 서버로 정보를 요구하기 위해 보내는 메세지 (GET 방식, POST 방식)
- 응답: HTTP에서 요구된 메세지에 대한 응답, HTML, 이미지 등이 응답의 내용이 됨
1.2 정적 페이지, 동적 페이지
- 정적 페이지: 변하지 않는 성격을 가진 페이지
- 동적 페이지: 자동으로 생성된 페이지, 기존의 웹 서버에 새로운 기능을 가진 프로그램을 탑재하여 동적으로 HTML을 생성
1.3 CGI(Common Gateway Interface)
- 동적 페이지를 위한 기술
- 웹 서버와 동적 컨텐츠 생성을 맡은 프로그램 사이에서 정보를 주고 받는 인터페이스
- 초기 웹 프로그래밍에 사용된 기술
- 프로세스 단위로 실행되기 때문에 사용자 증가시 급격한 성능 저하
1.4 확장 CGI
- 전통적인 CGI 방식의 단점 보완
- 프로세스 생성 방식의 변화로 시스템의 부하를 줄임
- ASP, PHP, Servlet, JSP 등
2. JSP란?
- 웹 프로그래밍 언어들 중의 하나
- 동적인 페이지를 생성하기 위한 서버측 스크립트 언어
- 자바 언어를 기반
- 객체지향적
- 플랫폼 독립적
- 네트워크 지향적
- 뛰어난 보안성
- 멀티스레드 기능
- 친근한 코드 (?)
예제: 서버 스크립트인 JSP로 구현
<%@ page import="java.util.*,java.text.*" %>
<html>
<head><title>example</title></head>
<body>
<%
Date date = new Date();
SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy-MM-dd");
String strdate = simpleDate.format(date);
%>
오늘 날짜는 <%=strdate%>입니다.
</body>
</html>
2.1 JSP 특징
- 빈즈 자바컴포넌트 사용 가능
- 최초 서블릿 컴파일 후 메모리에서 처리 (사용자 접속이 많아도 원할하게 처리)
- 다른 서블릿 간의 간편한 데이터 공유 (page, request, session, application scope)
- 자바의 모든 기능을 사용 가능 (확장성)
- IBM, 오라클, 썬, BEA 등에서 강력하게 지원
- 사용자 정의 태그 생성 및 다양한 기능의 태그 라이브러리 이용 가능 (JSTL)
- 다양한 운영체제와 개발, 실행 환경 지원
2.2 Servlet의 기본
- 완전한 자바 파일의 형태
- JSP와는 달리 자바 코드 안에 HTML 태그들이 포함
- JSP 페이지는 하나의 서블릿으로 변환이 되고 다시 컴파일 되어 실행
- JSP는 브라우저에 표현이 될 부분에 보다 유용하고 서블릿은 브라우저에 표시될 필요는 없지만 내부적으로 처리되어야 할 부분에 보다 유용하게 사용
'강의 > KOSTA' 카테고리의 다른 글
[JSP/Servlet] JSP Directives and Action tags (Day22) (0) | 2022.04.04 |
---|---|
[JSP/Servlet] How to JSP works and Servlet (Day21) (0) | 2022.04.04 |
[JSP/Servlet] JSP Basic Syntax (Day21~22) (0) | 2022.04.01 |
[JSP/Servlet] Build a Development Environment & etc (Day20~21) (0) | 2022.04.01 |
[JSP/Servlet] Introduction to Web Development (Day20) (0) | 2022.03.31 |