Server 기본 개념

기록하는 용도·2022년 9월 21일
0

Server 기본 개념

HTTP : HyperText Transfer Protocol 웹 통신 규약
HTTPS : HTTP Secure -> 보안 http protocol의 보안 버전으로 암호화된 버전이다.



Web Server

HTTP에 의거해 HTML(html, css, javascript) 문서를 서비스하는 서버
웹 브라우저 클라이언트에 정적인 컨텐트를 서비스하는 서버

(html 서버, 템플릿처럼 구글에 아이유 검색하면 똑같은 컨텐트에 아이유를 제공하는것으로,사용자의 요청에 맞게 정보를 정의하는것 이때 역할을 하는게 JSP, Django, flask, Nodejs, AJAX, JSON 이다.)



Web Application Server(WAS)

Web Server + Web Container

  • 데이터베이스 서버 및 타 서버와 연동
  • 다양한 비즈니스 로직을 처리하여 동적인 컨텐트를 클라이언트에게 제공하는 웹 어플리케이션 서버
  • (db연동, 다른서버 연동, 사용자 요청에따라 동적인 정보를 제공)



Web Container

java web 기술인 Servlet과 JSP가 실행 될 수 있는 환경을 제공한다.
우리는 현재 WAS 제품군 중에서 Apache Tomcat 9 버전을 이용한다.



- Client Side Script

HTML : web document의 컨텐트를 담당
CSS : web document 디자인 스타일 담당
JavaScript : web document 행위 담당
ECMAScript 표준을 준수하는 스크립트 언어
ECMA 인터내셔널 : 정보 통신 표준을 제정하는 표준화 기구

- Server Side : Servlet & JSP

Servlet : Java Web Programming의 기반 기술

  • Model2 MVC(Web MVC)의 Controller 역할을 담당
  • java class 개발 방식


    JSP : Java Server Page
  • 서버 사이드에서 동적인 웹 문서를 생성하는 템플릿 엔진 역할을 담당
    (동적인 웹페이즈(템플릿)을 만드는 기술이 jsp)
  • html 내의 java code 삽입하는 개발 방식 (-> view의 강점으로, 웹문서 구현에 장점
  • JSP는 WAS (Web Container)에 의해 Servlet class로 생성된다.B(jsp는 내부적으로 서블릿이다 라고 볼 수 있다.)
  • Model2 MVC(Web MVC)의 View 역할을 담당



Servlet

Java Web Programming의 기반 기술
Model2 MVC(Web MVC)의 Controller 역할을 담당
java class 개발 방식



JSP

Java Server Page, 서버 사이드에서 동적인 웹 문서를 생성하는 템플릿 엔진 역할을 담당
(동적인 웹페이지(템플릿)을 만드는 기술이 jsp)
html 내의 java code 삽입하는 개발 방식 (-> view의 강점으로, 웹문서 구현에 장점
JSP는 WAS (Web Container)에 의해 Servlet class로 생성된다.
(jsp는 내부적으로 서블릿이다 라고 볼 수 있다.)
Model2 MVC(Web MVC)의 View 역할을 담당



Web MVC or Model2 MVC

Model : 비즈니스 로직과 데이터 액세스 로직을 담당
		java component(or java beans) : DAO, Service, VO 등
View : 클라이언트에게 동적인 화면을 제공
	   jsp가 담당
Controller : 제어자의 역할, 클라이언트 요청 분석 후 모델과 연동, 적절한 view를 선택
			 Servlet 이 담당



Java Web Application 설정 방식

1) xml 설정 방식 : WEB-INF\web.xml -> DD (Deployment Descriptor : 배포기술서)
				 소스 코드와 설정이 분리
							
2) Annotation 설정 방식 : 의미있는 주석 => 설정 정보의 역할
						 소스 코드 상에서 설정 정보를 기술
									  

0개의 댓글