일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 순열 알고리즘
- 웹 프로그래밍
- SERVLET
- dbms
- 프로그래머스
- 부스트코스
- 정렬 알고리즘
- 웹프로그래밍
- mst
- request
- 웹서버
- Kruskal's Algorithm
- greedy
- mysql
- 그리디
- Prim's Algorithm
- 해시
- 다이나믹 프로그래밍
- BJ
- 네이버 부스트캠프 ai tech
- 크루스칼 알고리즘
- 소수
- jsp
- 프림 알고리즘
- DP
- 벡엔드
- programmers
- 백준
- 정렬
- 브라우저
- Today
- Total
끵뀐꿩긘의 여러가지
[부스트코스]웹 프로그래밍 12. Servlet(1) 본문
1.자바 웹 어플리케이션(Java Web Application)
WAS에 설치(deploy)되어 동작하는 어플리케이션입니다.
자바 웹 어플리케이션에는 HTML, CSS, 이미지, 자바로 작성된 클래스(Servlet도 포함됨, package, 인터페이스 등), 각종 설정 파일 등이 포함됩니다.
자바 웹 어플리케이션의 폴더 구조
이클립스에서 Dynamic Web Project의 servlet을 실행하면, 해당 프로젝트가 이클립스가 관리하는 .metadata 폴더 아래에 자바 웹 어플리케이션 폴더 구조로 만들어져 실행됩니다.
이클립스의 저장장소에서 확인할수 있습니다.
C:\Users\user\eclipse-workspace
보통 위의 주소에 저장되어있습니다.
2.서블릿이란?
웹프로그래밍에서 클라이언트의 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 Servlet 클래스의 구현 규칙을 지킨 자바 프로그래밍 기술입니다.
서블릿을 정의해보면 서블릿(servlet)은 WAS에 동작하는 JAVA 클래스이고 HttpServlet 클래스를 상속받아야 합니다.
서블릿과 JSP로부터 최상의 결과를 얻으려면, 웹 페이지를 개발할 때 이 두 가지(JSP, 서블릿)를 조화롭게 사용해야 합니다.
예를 들어, 웹 페이지를 구성하는 화면(HTML)은 JSP로 표현하고, 복잡한 프로그래밍은 서블릿으로 구현할 수 있습니다.
[ Servlet 특징 ]
-
클라이언트의 요청에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트
-
html을 사용하여 요청에 응답한다.
-
Java Thread를 이용하여 동작한다.
-
MVC 패턴에서 Controller로 이용된다.
-
HTTP 프로토콜 서비스를 지원하는 javax.servlet.http.HttpServlet 클래스를 상속받는다. UDP보다 속도가 느리다.
-
HTML 변경 시 Servlet을 재컴파일해야 하는 단점이 있다.
일반적으로 웹서버는 정적인 페이지만을 제공합니다. 그렇기에 동적인 페이지를 제공하기 위해서 웹서버는
다른 곳에 도움을 요청하여 동적인 페이지를 작성해야 합니다. 동적인 페이지로는 임의의 이미지만을 보여주는 페이지와 같이
사용자가 요청한 시점에 페이지를 생성해서 전달해 주는 것을 의미합니다. 여기서 웹서버가 동적인 페이지를 제공할 수 있도록
도와주는 어플리케이션이 서블릿이며, 동적인 페이지를 생성하는 어플리케이션이 CGI입니다.
참고: https://www.edwith.org/boostcourse-web/lecture/16686/
[LECTURE] 1) Servlet 이란? : edwith
들어가기 전에 웹 어플리케이션은 정적인 콘텐츠와 동적인 콘텐츠로 나누어 볼 수 있습니다. 프로그램을 수행해서 페이지를 동적으로 만들어 주는 서블릿에 대해서 알아봅니다. 학습 목표 ... - 부스트코스
www.edwith.org
HTML이 웹의 정적인 부분을 담당했다면, 오늘 배우는 servlet은 웹의 동적인 부분을 담당합니다. 아직 어렵고 무슨 말인지 잘 모르겠지만 함께 따라해보면 배워봅시다.
'부스트코스 - 웹 > 1. 웹 프로그래밍 기초' 카테고리의 다른 글
[부스트코스]웹 프로그래밍 14. Request, Response 객체 (0) | 2020.02.27 |
---|---|
[부스트코스]웹 프로그래밍 13. Servlet(2) (0) | 2020.02.21 |
[부스트코스]웹 프로그래밍 11. 개발환경 설정하기 (0) | 2020.02.21 |
[부스트코스]웹 프로그래밍 10. CSS(4-CSS layout스타일 속성) (0) | 2020.02.14 |
[부스트코스]웹 프로그래밍 9.CSS(3 - 기본스타일 속성) (0) | 2020.02.14 |