일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Java thorw
- dbeaver
- Java객체배열
- Java다운캐스팅
- 자바 제어문
- Java업캐스팅
- 자바 문자열 클래스
- 자바 추상메서드
- Java try-catch
- 데이터베이스
- 오라클
- db
- 자바 String클래스
- Java문자열 클래스
- Java 추상 메서드
- database
- Java 내부 클래스
- Express
- 자바 Random클래스
- 자바 try-catch
- 자바 예제
- DBMS
- 코딩
- 자바 Wrapper클래스
- Java추상클래스
- 자바 스트링클래스
- 자바 내부 클래스
- oracle
- java super( )
- nodejs
- Today
- Total
코딩이란 무엇일까
54일차[JSP/Servlet](1)-JSP와 서블릿 본문
서블릿, JSP란?
웹 서버 - 아파치
사용자의 요청이 정적 데이터인지 동적 데이터인지 판단해 준다.
정적 데이터일 경우 이미 준비된 HTML문서를 그대로 응답해 준다.
동적 데이터라면 웹 컨테이너에 요청을 보낸다
웹 컨테이너(서블릿 컨테이너)
동적 데이터일 경우 JSP, 서블릿으로 연산 및 제어, DB에 접근해서 정제된 데이터(정적 데이터)가 완성되면 이를 응답해 준다.
WAS(Web Application Server) -톰캣
동적 데이터를 처리할 서블릿을 메모리에 할당하며, web.xml을 참조하여 해당 서블릿에 대한 Tread를 생성한다.
서블릿 요청과 서블릿 응답 객체 생성 후 서블릿에 전달하면 연산 종료 후 메모리에서 해제시킨다.
서블릿(Servlet)이란?
서블릿은 서버에서 웹페이지 등을 동적으로 생성하거나 데이터 처리를 수행하기 위해 자바로 작성된 프로그램을 말한다.
서블릿은 Java코드 안에 HTML태그가 삽입되며 자바언어로 되어있다.
확장자는. JAVA이다.
클라이언트 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 서블릿 클래스의 구현 규칙을 지킨 자바 프로그램이다.
JSP(Java Server Pages)란?
JSP는 서블릿의 단점을 보완하고자 만든 서블릿 기반의 스크립트 기술이다.
서블릿을 이용하게 되면 웹 프로그래밍을 할 수 있지만 자바에 대한 지식이 필요하고 화면 인터페이스 구현에 너무 많은 코드를 필요로 하는 등 비효율적인 측면들이 있다. 때문에 서블릿을 작성하지 않고도 간편하게 웹 프로그래밍을 구현하게 만든 기술이 JSP이다.
JSP는 서블릿 기반의 서버 스크립트 기술이다.
[스크립트 기술이란?]
ASP, PHP처럼 미리 약속된 규정에 따라 간단한 키워드를 조합하면 실행 시점에 각각의 키워드에 매핑되어 있는 어떤 코드를 변환 후에 실행되는 형태이다.
JSP와 Servlet의 차이
Servlet JSP
Servlet | jsp |
자바코드로 구현하고 컴파일하고 배포해야한다. | 키워드가 태그화 되어 서블릿에 비해 배우기 쉽다. |
HTML태그로 문자열(””)스크림으로 처리해야한다 | 자바코드를<%%> 태그 안에 처리해주어야 한다. |
코드가 수정되면 다시 컴파일하고 배포해야한다. | HTML처럼 태그를 사용하여 자바코드도 사용이 가능하다. |
Servlet과 JSP의 역할
분명 위의 내용만 보면 JSP만 사용하면 되지 왜 두 가지 프로그램을 같이 사용하는지 어려웠지만
글을 몇 개 찾아보니 초기에 자바 웹개발은 서블릿을 이용한 개발이었다.
이후 JSP기술이 발표되면서 JSP형태의 개발이 유행하게 되고 지금에 와서야 역할을 나누어
Servlet+JSP형태의 개발이 이루어지고 있다.. 는 글을 봤다.
- JSP는 JSP기술의 장점을 최대한 활용할 수 있는 웹 애플리케이션 구조에서 사용자에게 결과를 보여주는 프레젠테이션 층을 담당하고
- Servlet은 Servlet 기술의 장점을 최대한 활용할 수 있는 사용자의 요청을 받아 분석하고 비즈니스 층과 통신하여 처리하고 처리한 결과를 다시 사용자에게 응답하는 컨트롤러 층을 담당한다라고 생각하면 좋다.
MVC 패턴의 JSP와 Servlet
Model1 방식 : JSP만 이용한 개발
Model2 방식 : Servlet과 JSP를 나누어 사용한 개발
Model1 방식을 사용하다 유지보수단계에서 많은 단점을 느껴 각각의 역할을 나누어 서블릿과 JSP를 동시에 사용하여 개발하는 방식이 Model2 방식이다.
쉽게 말해 보이는 부분은 HTML이 중심이 되는 JSP, 다른 자바 클래스에게 데이터를 넘겨주는 부분은 JAVA코드가 중심이 되는 Servlet이 담당한다.
[MVC패턴]
MVC패턴 : (모델-뷰-컨트롤러)는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴을 뜻한다.
- 모델 : 데이터와 비즈니스 로직을 관리
- 뷰 : 레이아웃과 화면을 처리
- 컨트롤러 : 명령을 모델과 뷰 부분으로 라우팅 합니다.
'국비지원수업' 카테고리의 다른 글
50일차[JavaScript](2)-Date객체와 날짜 (0) | 2023.01.03 |
---|---|
50일차[JavaScript](1)-정규식 (2) | 2023.01.03 |
49일차[JavaScript] (1)-form태그 요소 js로 가져오기 (0) | 2023.01.02 |
46일차[JavaScript]배열 (0) | 2022.12.28 |
45일차[JavaScript](2)-JavaScriptDocument객체 (2) | 2022.12.27 |