본문 바로가기

WEB27

[Servlet] 상태 정보 유지 기술 목차 상태 정보 유지 기술 웹에서 사용하는 HTTP 프로토콜의 통신 방식은 무상태(Stateless)의 특징을 가집니다. 클라이언트로부터 요청이 있을 때마다 연결 작업이 새롭게 이루어지고, 서버가 클라이언트에게 응답을 보내는 즉시 끊어집니다. 따라서 이전 요청에서 처리된 정보를 계속해서 사용하고 싶다면, 반드시 클라이언트나 서버에 정보를 저장해서 유지해야 합니다. 이처럼 상태 정보(State Information)를 계속된 요청에서 사용할 수 있도록 클라이언트나 서버에 저장하는 것을 상태 정보 유지 기술이라고 합니다. 상태 정보 유지 기술은 다음과 같이 저장 위치, 유지 기간에 따라 분류할 수 있습니다. 객체 상태 정보 저장 위치 유지 기간 ServletContext 서버 측에 저장 웹 애플리케이션 단위.. 2022. 7. 10.
[Servlet] 서블릿 파라미터 init-param, context-param 태그 목차 web.xml 서버에서 서블릿 실행에 관한 정보를 설정할 때는 web.xml에 태그로 설정합니다. web.xml 파일은 서버가 시작할 때 웹 서버가 사용하는 파일로서, 웹 애플리케이션 서비스 실행에 관한 전반적인 내용을 정의하는 환경설정 파일입니다. 서블릿 파라미터 web.xml 파일의 , 태그는 서블릿에 변수를 전달할 때 사용하는 태그로서, 서블릿의 초기 설정값을 동적으로 할당할 때 유용합니다. 이 태그를 이용하면 서블릿을 실행하며 필요한 값을 외부에서 전달받아 사용할 수 있게 됩니다. 이렇게 서블릿 소스에 직접 값을 지정하지 않고 외부에서 전달받을 경우, 실행환경에 맞게 동적으로 값을 할당할 수 있게 되고 객체지향적인 측면에서 유지 보수성이 높아진다는 장점이 있습니다. 예를 들어 DB 연동을 위.. 2022. 7. 10.
[Servlet] 서블릿 기본 개념과 요청/응답 처리 목차 서블릿 (Servlet) 이란? 서블릿은 자바 기반의 웹 서버 애플리케이션 기술로서, 웹 페이지를 동적으로 생성하는 웹 컴포넌트입니다. 서블릿 특징 자바 기반의 웹 컴포넌트로서 java 확장자를 갖습니다. 클라이언트의 요청에 의해서 동적으로 실행됩니다. 따라서 다양한 클라이언트 요구 사항을 처리할 수 있습니다. 서블릿은 웹 컨테이너에 의해서 관리되며 , 스레드로 동작되어 효율적인 요청처리가 가능합니다. MVC 패턴의 Controller 역할로서 서블릿이 사용됩니다. 서블릿 하나는 하나의 클래스로서, javax.servlet.http.HttpServlet 클래스를 상속 받아 구현해야 합니다. HttpServlet에는 웹상에서 클라이언트 요청이 있을 때 해당 서블릿을 실행하는 모든 조건이 포함되어 있습.. 2022. 7. 9.
[WEB] 웹 클라이언트-서버(Client-Server) 모델 목차 HTTP 프로토콜 (Protocol) HTTP(HyperText Transport Protocol)는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜입니다. 프로토콜이란 컴퓨터 내부 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계를 의미합니다. HTTP는 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트-서버 프로토콜이기도 합니다. HTTP 프로토콜은 일반적으로 TCP/IP 통신 위에서 동작하며 기본 포트는 80번입니다. HTTP 프로토콜은 무연결(Connectionless)과 무상태(Stateless)라는 특징을 가집니다. 무연결이란 요청에 대한 응답이 처이되면 연결이 끊어지는 형태로서, HTTP는 클라이언트와 서버간에 요청이 있을 때마다 독립적으로 연결하.. 2022. 7. 6.
[JavaScript] 이벤트 (Event) 목차 이벤트와 이벤트 핸들러 이벤트(event)란 프로그래밍하고 있는 시스템에서 일어나는 사건(action) 혹은 발생(occurrence)입니다. 버튼을 클릭하거나 키보드를 입력하는 등 사용자가 이벤트를 발생시킬 수도 있고, 페이지가 로드되는 등 어플리케이션 스스로가 이벤트를 발생시킬 수도 있습니다. 웹 페이지 안에서 발생한 여러 가지 이벤트를 이벤트 핸들러(event handler)를 이용해 처리할 수 있습니다. 이벤트 핸들러는 이벤트에 대응해 이벤트 처리를 담당하는 함수로서, 이벤트 리스너(event listener)라고도 합니다. 이벤트 처리를 위해 이벤트 핸들러를 정의하는 것을 이벤트 핸들러를 등록(register)했다고 말합니다. 이벤트와 이벤트 핸들러 연결 이벤트와 이벤트 핸들러를 연결하기 .. 2022. 7. 3.
[JavaScript] DOM (문서 객체 모델) 목차 DOM 이란? DOM (Document Object Model, 문서 객체 모델)은 HTML, XML 문서의 프로그래밍 인터페이스 입니다. 웹 페이지가 로드될 때, 웹 브라우저는 페이지의 DOM을 생성합니다. DOM은 nodes와 objects로 문서를 객체 지향적으로 표현합니다. DOM은 웹 페이지를 계층적인 트리구조로 정리하여, 프로그래밍 언어가 DOM 구조에 접근해서 문서 구조, 스타일, 내용 등을 변경할 수 있도록 지원합니다. 문서를 나타내는 최상위 객체는 document 객체입니다. DOM의 핵심 API 순회 childNodes, firstChild, lastChild, nextSibling, previousSibling 선택 getElementById() , getElementsByTag.. 2022. 7. 2.
[JavaScript] BOM (브라우저 객체 모델) BOM (Browser Object Model, 브라우저 객체 모델)은 브라우저의 정보에 접근하거나 브라우저의 여러 기능들을 제어하고자 할 때 사용할 수 있는 객체 모델입니다. 목차 Navigator 객체 브라우저와 관련된 정보를 관리하는 객체입니다. Navigator 객체 프로퍼티 프로퍼티 설명 appName 브라우저의 이름을 리턴 appVersion 브라우저의 버전을 리턴 cookieEnabled 브라우저의 쿠키 사용여부를 리턴 language 브라우저의 language를 리턴 onLine 브라우저의 online 여부를 리턴 product 브라우저의 engine명을 리턴 userAgent 서버에서 브라우저에 보내진 user-agent 헤더정보를 리턴 console.log("브라우저 이름", navig.. 2022. 6. 28.
[JavaScript] 윈도우 (Window) 객체 목차 Window 객체 Window 객체는 웹 브라우저의 창을 나타내는 객체입니다. 브라우저 창 안에 존재하는 모든 요소의 최상위 객체로서, 자바스크립트의 모든 객체, 전역 함수, 전역 변수들은 자동으로 Window 객체의 프로퍼티가 됩니다. Window 객체의 메소드는 전역 함수이며, Window 객체의 프로퍼티는 전역 변수가 됩니다. Window 객체는 브라우저 창이 열릴 때마다 하나씩 생성됩니다. Window 객체의 프로퍼티 프로퍼티 설명 document window에서 보여지는 현재 문서를 의미 name window의 이름을 리턴 history window의 history객체를 의미 location window의 location객체를 의미 navigator window의 navigator객체를 의.. 2022. 6. 28.
[JavaScript] 문자열 (String) 객체 String 객체는 원시 타입인 문자열을 다룰 때 유용한 속성과 메소드를 제공하는 레퍼(wrapper) 객체입니다. 변수 또는 객체 속성이 문자열을 값으로 가지고 있다면 String 객체의 별도 생성없이 String 객체의 속성과 메소드를 사용할 수 있습니다. 목차 문자열 생성 new 키워드 이용 var strObj = new String("hello"); 리터럴 이용 var str = "hello"; var strObj = new String("hello"); //String 객체 var str = "hello"; ////string 타입 console.log(strObj); //String {'hello'} console.log(strObj.toString()); //hello console.log(.. 2022. 6. 27.
[JavaScript] 배열 (Array) 객체 배열은 Array 생성자로 생성된 Array 타입의 객체로서, 1개의 변수에 여러 개의 값을 순차적으로 저장할 때 사용합니다. 목차 배열 생성 new 키워드 이용 매개변수가 1개이고 숫자인 경우 해당 값을 length로 갖는 빈 배열을 생성하고, 그 외의 경우 매개변수로 전달된 값을 요소로 갖는 배열을 생성합니다. var arr = new Array(2); console.log(arr); //(2) [empty × 2] var arr2 = new Array(10, 20, 30); console.log(arr2); //(3) [10, 20, 30] 리터럴 이용 0개 이상의 값을 쉼표로 구분하여 대괄호([])로 묶습니다. var arr = [10, 20, 30]; console.log(arr); //(3) .. 2022. 6. 27.