일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- NestedFor
- 참조형변수
- 대덕인재개발원
- 오라클
- 컬렉션프레임워크
- 생성자오버로드
- 자동차수리시스템
- 추상메서드
- exception
- 환경설정
- abstract
- 사용자예외클래스생성
- 어윈 사용법
- cursor문
- 제네릭
- EnhancedFor
- GRANT VIEW
- oracle
- 메소드오버로딩
- 정수형타입
- 집합_SET
- 컬렉션 타입
- Java
- 예외미루기
- 다형성
- 한국건설관리시스템
- 예외처리
- 인터페이스
- 객체 비교
- 자바
- Today
- Total
목록Java_Servlet (26)
거니의 velog
4. 여러 가지 서블릿 관련 Listener API * 자바 GUI에서는 마우스 클릭과 같은 이벤트 발생 시 여러 가지 이벤트 핸들러를 이용해 화면의 기능을 구현한다. 이처럼 서블릿에서도 서블릿에서 발생하는 이벤트에 대해 적절한 처리를 해주는 여러 가지 리스너를 제공한다. 서블릿 관련 Listener 추상 메서드 기능 ServletContextAttributeListener attributeAdded() attributeRemoved() attributeReplaced() Context 객체에 속성 추가/제거/수정 이벤트 발생 시 처리한다. HttpSessionListener sessionCreated() sessionDestroyed() 세션 객체의 생성/소멸 이벤트 발생 시 처리한다. ServletR..
3. Filter API * 이번에는 필터에 대해 알아보자. 필터란 브라우저에서 서블릿에 요청하거나 응답할 때 여러 요청이나 응답과 관련해 여러 가지 작업을 처리하는 기능이다. 프로그래밍을 하다가 한글 인코딩처럼 각 서블릿에서 반복적으로 처리해야 하는 작업이 있을 수 있는데, 이런 경우 서블릿의 공통 작업을 미리 필터에서 처리하면 반복해서 작업할 필요가 없다. * 이처럼 웹 페이지에서 입력한 한글을 서블릿에 전달하려면 setCharacterEncording() 메서드를 이용해 한글 인코딩 설정을 서블릿마다 상단에 추가해야 했다. 하지만 모든 서블릿에서 공통으로 처리하는 작업을 먼저 필터에서 처리해 주면 편리하다. * 필터는 용도에 따라 크게 요청 필터와 응답 필터로 나뉘며 다음과 같은 API가 있다. -..
* 이번에는 서블릿의 기능을 도와주는 다른 API들에 대해 알아보자. 우선 서블릿의 요청과 응답 작업하기 전에 수행하는 필터(Filter) 기능을 알아본 다음 서블릿의 속성과 스코프(Scope) 개념에 대해 살펴보자. 그리고 서블릿 관련 API에 특정 이벤트가 발생했을 때 이벤트를 처리할 수 있는 여러 가지 리스터(Listener)에 대해서도 알아보자. 이번에 배울 기능을 알아두면 좀 더 고급 기능을 구현할 수 있다. 1. 서블릿 속성과 스코프 * 서블릿 속성(attribute)이란 다음 세 가지 서블릿 API 클래스에 저장되는 객체(정보)라고 보면 된다. - ServletContext - HttpSession - HttpServletRequest * 각 속성은 앞에서 이미 사용해 봤다. 서블릿 API의..
4. 세션을 이용한 웹 페이지 연동 기능 * 이번에는 세션을 이용해 웹 애플리케이션을 연동하는 방법을 알아보자. * 세션 역시 웹 페이지들 사이의 공유 정보를 서버에 저장해 두고 웹 페이지들을 매개해 주는 방법이라는 점에서는 쿠키와 같다. 하지만 쿠키는 사용 시 웹 페이지들의 정보가 클라이언트 PC에 저장되므로 정보가 쉽게 노출될 수 있다는 단점이 있는 반면, 세션은 서버의 메모리에 생성되어 정보를 저장한다. 따라서 웹 페이지에서 사용되는 정보 중에 로그인 정보처럼 보안이 요구되는 정보는 대부분 세션을 이용한다. * 세션은 각 브라우저당 한 개, 즉 사용자당 한 개가 생성된다. 사용자의 로그인 상태가 쇼핑몰의 장바구니 담기 기능 같은 정보를 해당 브라우저의 세션에 저장해 두고 사용하면 편리하다. * 세션..
3. 쿠키를 이용한 웹 페이지 연동 기능 * 이번에는 웹 페이지끼리 정보를 공유하는 기능 중 쿠키를 이용하는 기능에 대해 알아보자. * 쿠키(Cookie)란 웹 페이지들 사이의 공유 정보를 클라이언트 PC에 저장해 놓고 필요할 떄 여러 웹 페이지들이 공유해서 사용할 수 있도록 매개 역할을 하는 방법이다. * 쿠키의 특징은 다음과 같다. - 정보가 클라이언트 PC에 저장된다. - 저장 정보 용량에 제한이 있다(파일 용량은 4kb). - 보안이 취약하다. - 클라이언트 브라우저에서 사용 유무를 설정할 수 있다. - 도메인당 쿠키가 만들어진다(웹 사이트당 하나의 쿠키가 만들어진다). * 쿠키는 클라이언트 PC에 정보를 저장해서 사용하므로 보안에 취약하다. 따라서 쿠키를 이용한 방법은 주로 보안과 무관한 경우에..
1. 웹 페이지 연결 기능 * 보통 웹 프로그램에서 사용되는 정보는 서블릿의 비즈니스 로직 처리 기능을 이용해 데이터베이스에서 가져온다. 그러나 동시 사용자 수가 많아지면 데이터베이스 연동 속도도 영향을 받게 되므로 정보의 종류에 따라 어떤 정보들은 클라이언트 PC나 서버의 메모리에 저장해두고 사용하면 좀 더 프로그램을 빠르게 실행시킬 수 있다. 이번에는 그 방법과 함께 서블릿이 로그인 시 사용자의 로그인 상태를 일정하게 유지시키는 기능에 대해 살펴보자. (1) 세션 트래킹 * 온라인 쇼핑몰을 이용하다 보면 메인 페이지에서 미리 로그인한 후 다른 웹 페이지에서 상품에 관한 댓글을 달거나 게시판에 상품평을 달곤 한다. 글쓰기창에서는 따로 로그인하지 않아도 된다. 그러나 메인 페이지에서 미리 로그인하지 않고..
(5) ServletConfig * 이번에는 다른 서블릿 확장 API인 ServletConfig에 대해 알아보자. * ServletConfig는 각 Servlet 객체에 대해 생성된다. 그리고 서블릿 API 계층 구조를 보면 ServletConfig 인터페이스를 GenericServlet 클래스가 실제로 구현하고 있다. * ServletConfig에서 제공하는 여러 가지 메서드를 이용해 서블릿에 관련된 기능을 사용할 수 있다. 대표적인 기능이 앞에서 실습한 ServletContext 객체를 가져오는 기능이다. * ServletConfig는 javax.servlet 패키지에 인터페이스로 선언되어 있으며, 서블릿에 대한 여러 가지 기능을 제공한다. 각 서블릿에서만 접근할 수 있으며 공유는 불가능하다. Ser..
3. dispatch를 이용한 포워드 방법 * 이번에는 dispatch를 이용해 포워드하는 방법을 알아보자. (1) dispatch를 이용한 포워딩 과정 * dispatch를 이용한 포워딩 과정이 redirect 방법과 다른 점은 클라이언트의 웹 브라우저를 거치지 않고 바로 서버에서 포워딩이 진행된다는 것이다. 따라서 웹 브라우저 주소창의 URL이 변경되지 않는다. 즉, 클라이언트 측에서는 포워드가 진행되었는지 알 수 없다. 1. 클라이언트의 웹 브라우저에서 첫 번째 서블릿에 요청한다. 2. 첫 번째 서블릿은 RequestDispatcher를 이용해 두 번째 서블릿으로 포워드한다. (2) 서블릿을 이용한 dispatch 포워딩 실습 * 이번에는 dispatch 방법으로 포워딩 기능을 구현해 보자. 1. ..
1. 서블릿 포워드 기능 사용하기 * 웹 프로그래밍 개발 초기에는 지금까지 배운 기본적인 서블릿 기능을 이용해 실제 웹 사이트의 기능을 구현했다. 즉, 서블릿 요청과 비즈니스 로직 처리 작업, 웹 브라우저의 화면 표시 응답 기능 등을 모두 사용했다. * 이번에는 이 외에 서블릿 프로그래밍을 개발할 때 사용하는 기능인 포워드, 바인딩, 에너테이션 등 다양한 기능에 대해 알아보자. (1) 포워드 기능 * 실제 온라인 쇼핑몰 같은 웹 애플리케이션은 여러 기능을 합쳐 하나의 프로그램을 실행한다. 회원 관리 기능, 게시판 관리 기능, 주문 관리 기능 등에 대해 각각의 서블릿이 기능을 수행하는 것이다. * 그런데 프로그램을 실행하다 보면 서블릿끼리 또는 서블릿과 JSP를 연동해서 작업해야 하는 경우가 있다. 예를 ..
1. 서블릿의 비즈니스 로직 처리 방법 * 웹 프로그램은 클라이언트의 요청에 대해서 비즈니스 처리 기능을 이용해 데이터 저장소에서 데이터를 조회한 후 서블릿의 응답 기능을 이용해 클라이언트에게 결과를 전송한다. * 예를 들어 인터넷 교보문고나 예스24 같은 도서 쇼핑몰(온라인 서점)에서 책 제목을 검색창에 입력하고 검색 버튼을 누르면 책 제목이 서블릿으로 전송된다. 그럼 서블릿은 책 제목을 전송 받아 책 제목에 대한 정보를 데이터베이스 연동 기능을 이용해 조회한다. 그리고 조회한 결과를 서블릿 응답 기능을 이용해 클라이언트 브라우저에 전송하여 결과를 보여준다. * 서블릿 비즈니스 처리 작업이란 서블릿이 클라이언트로부터 요청을 받으면 그 요청에 대해 작업을 수행하는 것을 의미한다. 웹 프로그램에서 대부분의..