본문 바로가기

분류 전체보기

(22)
[JSP]JSP의 스크립트 요소 스크립트 요소 JSP 프로그래밍에서 사용되는 문법 표현 형태로 총 4가지가 존재한다. 선언문(Declaration) - 스크립트릿(Scriptlet) - 표현식(Expression)2 - 주석(Comment) - , 선언문(Declaration) - JSP페이지에서 사용될 변수나 메서드를 선언할 수 있는 영역의 요소 JSP 페이지 어느 곳에서든지 참조하여 사용이 가능하다. JAVA형식으로 선언된 변수나 메서드를 이용해 동적인 HTML 코드를 생성하는데 사용된다. 멤버변수나 메서드의 선언은 JAVA의 클래스와 똑같다. 멤버변수를 선언과 동시에 초기화를 하지 않는다면 각 자료형의 기본값으로 초기화가 된다. 단 메서드의 경우에 반드시 리턴 타입이 존재해야한다. JSP페이지에서 선언된 메서드는 자신의 페이지에서..
[JSP]Model1, Model2 Controller, Model, View Controller : 사용자 요청화면 처리, 화면의 로직 처리 담당 Model : 알고리즘, DB와의 상호작용, 데이터 처리담당 View : 사용자에게 보여줄 UI(User Interface)담당 Model1 JSP가Controller + View의 역할을 하고, Java Bean이 Model의 역할을 한다. 개발속도가 빠르나 유지보수가 어렵다. 때문에 규모가 작고 유지보수가 거의 필요없는 프로젝트에 적합하다. 동작방식 클라이언트가 웹 브라우저를 통해 *.jsp 파일 요청 웹 서버가 요청을 받아 Container로 전달 Container는 요청에 해당하는 *.jsp파일찾고 Servlet으로 변환한다.(.java) 변환된 Servlet파일을 컴파일한다.(.cla..
[JSP]JSP의 개념 JSP는 Servlet의 단점을 보완하기 위해 만들어졌으나, 결국에는 Servlet으로 변환되어 컴파일되므로 Servlet의 생명주기 및 동작되는 방법이 비슷하다. JSP(Java Server Page) 동적 페이지 생성을 위한 서버측 스크립트 언어로, Servlet의 단점을 극복하기 위해 만들어졌다. Servlet : JAVA소스코드 속에 HTML 소스코드가 들어가는 구조 JSP : HTML소스코드 속에 자바 소스코드가 들어가는 구조 HTML내에 , , 등과 같은 기호의 삽입을 통해 작성되며, 해당 기호는 프로그램이 수행된 결과와 치환됨으로써 사용자의 브라우저에는 순수한 HTML태그로만 구성된 페이지를 볼 수 있게 된다. JSP페이지 내에서 작성된 자바 소스코드는 웹 브라우저로 보내지는 것이아니라 웹 ..
[Servlet]Servlet의 주요 클래스와 실제 웹페이지 제작 Servlet의 주요 클래스 HttpServlet 서블릿을 만들기 위해 반드시 상속해야 할 필수 클래스 존재 목적 자체가 서블릿을 생성하기 위해 제공된다. Servlet(Interface) - GenericServlet(abstract class) - HttpServlet의 상속구도를 갖는다. Init(), service(), destroy() : 서블릿의 생명주기를 담당하는 메서드는 Servlet Interface에 정의되어있다. doGet(), doPost()등 : 브라우저의 서블릿 호출방식의 요청 처리를 위한 메서드로 HttpServlet클래스에 정의되어있다. HttpServletRequest 클라이언트가 데이터를 입력하거나 또는 클라이언트의 정보에 대한 요청 값을 가지고 있는 클래스이다. getP..
[Servlet] Servlet과 Container의 개념 Applet Client Side 동작방식을 갖는다. 자바로 개발한 응용 프로그램을 웹 페이지와 함께 사용자측으로 보낼 수 있도록 만든 프로그램 클라이언트(브라우저)에서 호출시 클래스 파일이 클라이언트 PC로 다운로드 되어 클라이언트 측에 내장되어있는 JVM에 의해 실행된다. Servlet 자바를 사용하여 동적인 웹페이지 콘텐츠를 생성하기 위한 기술 Applet + Server로 자바로 개발한 응용프로그램을 웹 서버에서 실행시켜 HTML 형식의 문서로 만들어 클라이언트에게 반환하는 웹 어플리케이션 컴포넌트이다. 확장 CGI방식을 사용하며 하나의 완전한 자바파일의 형태를 갖는다.(확장자또한 .java 이다.) 자바 언어를 이용해 클라이언트에 보여줄 동적인 부분을 잘 구분하여 적절한 위치에 HTML 태그를 ..
[Network]쿠키와 세션 HTTP의 특징과 세션과 쿠키가 만들어진 이유 HTTP의 특징 비연결성(connectionless), 무상태성(stateless)한 특징을 갖는 프로토콜이다. 비연결성 : 클라이언트가 HTTP Request를 통해 서버에게 요청을 보내면, 서버는 클라이언트의 요청에 맞는 Response를 보내고 접속을 끊는다. 무상태성 : 클라이언트와 서버의 연결이 끊어지는 순간 통신이 끝나며 상태 정보는 유지하지 않는다. 이러한 HTTP의 특징으로 인하여 서버는 클라이언트가 이전에 무엇을 했고 지금 무엇을 했는지에 대한 정보가 없다. 세션과 쿠키 HTTP통신의 비연결성 및 무상태성으로 인해 발생하는 문제점들을 해결하기 위해 고안되었다. 세션과 쿠키는 서버 또는 클라이언트에 클라이언트 자신에 대한 상태 정보를 저장한 뒤..
[JSP]동적 페이지를 위한 기술 CGI 사용자가 웹 브라우저의 URL을 통해 서버에게 HTTP Request를 보내면 웹서버는 요청(Request)에따라 알맞는 응답(Response)을 한다는건 알았다. 그렇다면 웹 서버는 어떻게 동적인 웹 컨텐츠를 만들어 반환할 수 있었던 것일까? 필요한 사전지식 프로세스 : 프로그램이 실행중인 상태로 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 말한다. 프로세스는 프로그램에 사용되는 데이터와 메모리 등의 자원 그리고 스레드로 구성된다. 스레드 : 프로세스 내에서 실제로 작업을 수행하는 주체를 의미한다. 모든 프로세스에서는 한 개 이상의 스레드가 존재하여 작업을 수행해야하며, 두 개 이상의 스레드를 갖는 프로세스를 멀티스레드 프로세스라고 한다. 비유법을 써보자면 은행이라는 프로세스에 여러개의 스레..
[WEB]3-tier architecture와 WAS의 개념 3-TIER ARCHITECTURE 사용자 인터페이스, 비지니스 로직, 데이터베이스를 각각 독립된 모듈로 개발하고 유지하는 구조 2계층 구조의 제한을 극복하기 위해 탄생한 구조로, 사용자 인터페이스 환경과 데이터베이스 관리서버 환경 사이에 중간층이 추가된 구조이다. 중간층인 비지니스 로직은 데이터베이스의 다단계나 응용 프로그램의 실행 또는 사용자 요구 분산을 위한 큐잉을 수행할 수 있는데, 예를 들어 중간층이 큐로써 역할을 한다면 클라이언트는 자신의 요청을 중간층에 전달만 하고 중간층이 서버에 접속해서 클라이언트가 남기고 간 요청에 대한 응답을 받아 클라이언트에 돌려줌으로써 스케줄링을 가능하게 할 뿐만 아니라 다수 사용자 요구 처리에 대한 우선 순위를 정할 수 있게 해주어 서버의부하를 줄여준다. 프레젠테..
[WEB]정적 페이지와 동적 페이지 정적 페이지 고정된, 변하지 않는 성격을 가진 페이지로 마치 책과 같다. 클라이언트가 URL을 통해 서버에 웹 페이지를 요청하였을 때 서버 안에 이미 만들어진 HTML 문서를 사용자에게 보여주는 경우로 요청에 대해 항상 똑같은 결과를 반환한다. 웹 서버만 있으면 동작할 수 있으며, 저장되어 있는 것을 보여주기만 하면 되기떄문에 속도가 빠르다. 동적 페이지 웹 서버에서 여러가지 요청에 따라 상황에 맞는 웹 페이지를 '자동'으로 생성한다. 클라이언트가 URL을 통해 서버에 웹 페이지를 요청하였을 때, 서버가 사용자에 맞는 HTML 문서를 생성하여 사용자에게 응답 하는 경우로 요청에 대해 다른 결과가 반환될 수 있다. 웹 서버와 웹 애플리케이션 서버(WAS)가 필요하며 추가적인 랜더링 작업이 필요하므로 정적 ..
[WEB]클라이언트 / 서버 클라이언트/서버의 개념 두 개의 컴퓨터 프로그램 사이에 이루어지는 역할 관계를 나타낸다. 물론 단일 컴퓨터 내에서도 적용될 수 있는 개념이나, 네트워크 환경에서 더 큰 의미를 가진다/ 그림에서는 데이터를 가져오는 예시로 DB를 들었으나 서버 컴퓨터 내 파일시스템이 될수도 있다. 클라이언트 서비스를 요청하는 주체 서버와 이어진 모든 기기와 단말기에서 웹에 접근하기 위한 소프트웨어이며, 주로 서버에게 요청을 보내고 응답을 받는 역할을 한다. 서버 클라이언트에 의해 요청된 서비스를 제공 또는 처리 응답 하는 주체 이미지, 파일, HTML파일을 저장 해 두었다가 클라이언트에 요청에 알맞는 정보를 찾아 제공해주는 시스템을 말한다. 서비스란? 클라이언트로부터 요청을 받아 응답을 내려주는것을 재화와 서비스의 개념에서..