예전의 프로그램 이용 프로세스
사용자 인터페이스 -> 본체 -> DB
DB -> 사용자에게 결과출력

온라인을 이용...
클라이언트 -> 온라인 -> 서버-DB
 : "동기화"

브라우저 --request.요청--> 서버
           <--response.응답--
: 클라이언트에서 요청한것을 전달받은 페이지를
  볼수있도록 해주는 환경

웹 서버: [서블릿 컨테이너] 
   == 클라이언트로부터 요청받아서
   서버에 저장된 리소스를 클라이언트에게 전달하는 주체



서블릿 vs JSP
Servlet
웹 페이지를 동적으로 생성하기 위한 서버측 프로그램
Java 기반 ( ㅁㅁ.java )
내부에 HTML코드를 작성할수있음
WAS 위에서 컴파일되어 동작함
(Web Application Server  웹 서버  서블릿 컨테이너)

=> 서버 프로그래밍을 가능하게했지만,
협업이 어렵고, 유지보수가 매우 어려움



----> JSP
HTML 코드 내부에 Java코드를 작성하는 서버 프로그램 언어
동적 웹 페이지를 생성
 + 빈즈 자바 컴포넌트 사용가능 => M DB
 빈즈 == 클래스 == 모듈 == 하나의 기능
  커스텀 태그 만들어 사용가능
  JSTL(JSP Standard Tag Library)과 같은 태그 라이브러리 이용가능
  스프링 @MVC 등 다양한 프레임워크와 결합하여 개발가능



JSP로 작성된 프로그램(ㅁㅁ.jsp==View) ---[ 요청 request ]--->Java(C)---> 서버-DB(M)




서버로 요청을 하게되면, 서블릿로 변환

클라이언트--GET test.jsp--->Server with 컨테이너---읽고 변환-->test_jsp.java(서블릿파일)
----> 컴파일--->test_jsp.class----실행--->HTML파일---->HTTP 프로토콜을 통해 해당 페이지 전달
☆브라우저는(사용자는,클라이언트는) html파일을 서비스 받는다.


URL 경로 + 쿼리(요청쿼리. 요청 파라미터값이 있음)
https://www.naver.com/  j/6760816682 ? pwd=RXZUanhwc2JDZFlwd2psTWRlQmZ6Zz09

웹 브라우저---URL 입력,요청--->DNS 서버--IP 주소로 변환--->웹 브라우저
    https://www.naver.com/index.html
페이지를 요청-->


MVC 패턴 => 개발론 발전하는 이유????
협업과 유지보수

JSP가 변환된 Servlet파일에는
pageContext,application,...등이 객체초기화
== JSP에서 별도의 선언없이 사용가능
== JSP 내장객체



+ Recent posts