반응형
웹 기술의 발전 과정
웹 기술은 사용자의 다양한 요구와 기술적 도전을 해결하기 위해 지속적으로 발전해 왔습니다. 아래는 이러한 발전 과정을 단계별로 살펴본 내용입니다.
1. 초기 웹 서비스와 정적 데이터 전달

- 정적 웹 페이지: 초기 웹 페이지는 HTML로 작성되었으며, 서버에 저장된 파일을 그대로 사용자에게 전달하는 방식이었습니다. 이러한 페이지들은 사용자의 상호작용이나 동적인 데이터 변화를 반영할 수 없었습니다.
2. CGI (Common Gateway Interface)


- 동적 데이터 처리: CGI는 웹 서버와 외부 프로그램 사이의 인터페이스를 제공하여, 사용자의 요청에 따라 실시간으로 데이터를 처리하고 결과를 반환할 수 있도록 한 첫 번째 기술입니다.
- CGI의 한계: 각 요청마다 새로운 프로세스를 시작해야 하는 비효율성이 있었습니다.
3. Servlet


- 프로세스 관리의 효율화: Servlet은 자바 기반의 서버 측 프로그래밍 기술로, 웹 서버 내에서 실행되며 요청당 하나의 스레드만을 사용하여 처리합니다. 이는 CGI의 프로세스 관리 비효율성을 해결했습니다.
- Servlet의 역할: 사용자 요청에 따라 동적인 콘텐츠를 생성하여 응답하는 기능을 수행합니다.
4. JSP (JavaServer Pages)



- UI와 로직의 통합: JSP는 HTML 내에 자바 코드를 삽입할 수 있게 하여, 웹 페이지의 UI와 서버 사이드 로직을 쉽게 통합할 수 있게 한 기술입니다.
- Servlet과의 관계: JSP는 내부적으로 Servlet으로 변환되어 실행되며, 이 과정을 통해 개발자는 비즈니스 로직과 프레젠테이션 레이어를 보다 효율적으로 관리할 수 있게 되었습니다.
5. Spring Framework와 Dispatcher Servlet

- 복잡한 애플리케이션 개발 지원: Spring Framework는 종합적인 프로그래밍 및 구성 모델을 제공하여, 개발자가 엔터프라이즈 레벨의 복잡한 애플리케이션을 쉽게 개발할 수 있도록 지원합니다.
- 중앙 집중식 요청 처리: Dispatcher Servlet은 모든 요청을 받아 적절한 컨트롤러로 라우팅 하는 역할을 하며, 이를 통해 애플리케이션의 요청 처리 구조를 단순화하고 효율화할 수 있습니다.
6. Spring Boot
- 개발의 간소화와 자동화: Spring Boot는 Spring 애플리케이션을 위한 초기 설정을 자동화하고, 개발자가 빠르게 애플리케이션을 개발할 수 있도록 다양한 기능을 제공합니다.
- 내장 서버의 제공: 내장된 Tomcat, Jetty 등의 웹 서버를 통해 별도의 웹 서버 설치 없이 애플리케이션을 실행할 수 있게 해 주며, 이는 개발 및 테스트 과정을 대폭 단순화합니다.
이러한 웹 기술의 발전은 사용자 경험의 향상, 애플리케이션 개발의 효율성 증대, 그리고 웹 애플리케이션의 복잡도 증가에 대응하기 위한 노력의 결과입니다. 각 단계는 기술적 도전을 해결하고, 새로운 가능성을 열어가는 과정에서 나타났습니다.
반응형
'웹 개발(Web Development) > Spring' 카테고리의 다른 글
| [Spring] Model과 JSP 내장 객체 EL 사용법 (0) | 2024.03.14 |
|---|---|
| [Spring] @RequestMapping 이란? 다양한 방식의 매개변수 (0) | 2024.03.14 |
| STS(Spring Tool Suite) 자동 주석 템플릿 설정 방법 (0) | 2024.03.04 |
| Spring MVC(Spring Legacy Project) (0) | 2024.03.03 |
| Spring Framework vs Spring Boot (0) | 2024.03.03 |