자바를 이용한 서버 프로그래밍 기술로 웹 환경에서 자바를 사용하기 위해 등장
자바 플랫폼에서 컴포넌트를 기반으로 하는 웹 애플리케이션을 개발할 때 사용하는 핵심 기술
(컨테이너인 톰캣에 의해 관리되는 웹 애플리케이션)
웹 애플리케이션 확장 용이, 독립적 플랫폼으로 개발 가능
자바 기반으로 자바 API 모두 사용 가능
하드웨어나 운영체제에 영향을 받지 않아 한 번 개발된 어플리케이션 다양한 서버 환경에서도 실행
웹 애플리케이션에서 효율적인 자료 공유 방법 제공
다양한 오픈소스 라이브러리 및 개발도구 활용 가능
MVC 패턴 쉽게 적용 가능
컨테이너와 밀접한 서버 프로그램 구현 가능
MVC 패턴 적용 시 콘텐츠와 비즈니스 로직 분리 가능
컨트롤러와 뷰가 역할 분담 → 작업 원활
웹 브라우저와 웹 서버가 지속적으로 클라이언트를 인식하려고 필요한 정보를 임시로 저장 (웹 애플리케이션에 최초로 접속할 때 세션 설정)
연결된 사용자마다 생성되기 때문에 서버에 연결된 각각의 사용자마다 자신만의 세션 영역이 존재하며(분리된 저장 영역) 사용자 간에 공유되지 않음
자바프로그램에서 표준화된 방법으로 다양한 데이터베이스 접속할 수 있도록 만든 API 규격
대표적인 로깅 프레임워크로 기존 API들의 문제점 보완
기존 로깅 프레임워크와의 호환성
기본적인 구조만을 제공하여 실제 로깅 처리(Log4J)는 다른 구현체 쓸 수 있는 범용 프레임워크
(annotation 활용해 Log4J 결합)
100 | Continue |
---|---|
200 | OK 오류 없이 전송 성공 |
201 | Created, Post 명령 실행 및 성공 |
400 | Bad Request 클라이언트의 잘못된 요청으로 처리할수 없음 |
403 | Forbidden 접근이 거부된 문서 요청 |
404 | Not found 문서를 찾을 수 없음 |
405 | Method not allowed 리소스를 허용하지 않음 |
406 | Not acceptable 허용할 수 없음 |
500 | Internal server error 내부 서버 오류 (잘못된 스크립트 실행 시) |
501 | Not implemented 클라이언트에서 서버가 수행할 수 없는 행동 요구 |
502 | Bad gateway 서버 과부하 상태 |
503 | Service unavailable 외부 서비스가 죽었거나 현재 멈춘 상태 |
505 | HTTP version not supported |