MY MEMO
[AJAX] AJAX와 Servlet 개념잡기 본문
AJAX란?
: AJAX란 비동기 JavaScript와 XML , 서버측 Scripts와 통신하기 위한 XMLHttpRequest객체를 사용, 서버측으로 다양한 형식(JSON, XML, HTML 및 일반 텍스트 형식 등)의 정보를 주고 받음, AJAX의 강력한 특징은 페이지 전체를 리프레쉬 하지 않고서도 수행 되는 "비동기성", 이러한 비동기성을 통해 사용자의 Event가 있으면 전체 페이지가 아닌 일부분만을 업데이트 가능
출처 : https://developer.mozilla.org/ko/docs/AJAX/Getting_Started
장점
: 고속으로 화면 전환
: 서버 처리를 기다리지 않고 비동기 요청
: 수신하는 데이터 양을 줄이고 client에게 처리 위임 가능
단점
: Ajax를 사용할 수 없는 browser가 존재
: httpclient기능이 한정
: 페이지 이동없는 통신으로 인한 보안문제
: 지원하는 charset이 한정
: script로 작성 -> debugging이 용이하지 않다
: 요청이 남발하면 서버에 부하 ↑
: 동일-출처 정책으로인해 다른 도메인과는 통신이 불가능
Servlet이란?
: 클라이언트의 요구를 받아 그에 대한 처리를 한 후, 결과를 되돌려주는 서버 모듈
: Servlet은 웹에서 JAVA 프로그래밍을 구현하기 위해 탄생
: JAVA 로 구현된 CGI(Common Gateway Interface)
: HTTP protocol 서비스를 지원하는 javax.servlet.http.HttpServlet 클래스를 상속하여 개발된다.
: HTML 변경시 Servlet을 재컴파일 해야 하는 단점
: 웹 애플리케이션 확장이 용이하고 플랫폼에 독립적인 개발이 가능
Servlet Container란?
: Servlet은 Container에 의해서 실행되고, 관리
서블릿 컨테이너(Servlet Container)
- 서블릿 구조에서의 가장 큰 특징.
- 서블릿을 서버에서 실행하기 위한 서버 프로그램.
웹 서버는 서블릿 자체를 실행하지 못하므로 JVM을 내장한 컨테이너라는 서블릿 실행환경이 필요하다.
동작 과정
1) 웹 서버는 클라이언트 요청을 컨테이너로 전달한다. 컨테이너는 서블릿이 메모리에 있는지 확인하고 없을시
클라이언트 요청을 처리할 스레드를 생성해서 처리한다.
2) 서블릿은 JDBC를 이용해 데이터베이스에 접근할 수 있고, 별도로 제작된 자바 클래스를 통해 다양한 기능을 구현한다.
3) 서블릿에서 수행된 결과는 HTML 형식으로 클라이언트에 전달된다.
출처: http://unabated.tistory.com/entry/서블릿이란 [랄라라]
'STUDYING > WEB' 카테고리의 다른 글
[WEB] Naver Login api (0) | 2017.06.17 |
---|---|
[AJAX] AJAX와 JSON으로 실시간 익명 채팅 사이트 구현하기 (0) | 2017.06.14 |
[AJAX] AJAX로 회원가입 페이지 만들기 (0) | 2017.06.13 |
[WEB HACKING] XSS, XST, Cross site request forgery,역공학 (0) | 2017.06.12 |
[WEB HACKING] cookie와 session (0) | 2017.06.12 |