서블릿과 JSP
- 웹 프로그래밍 언어
- jsp/서블릿 : 자바 언어를 기반으로 웹에서 동작하는 프로그래밍 기술
- 서블릿이 먼저 나온 기술
- 서블릿으로는 웹 문서 만들기가 어려워서 jsp는 나중에 쉽게 웹문서를 만들도록 만들어진 기술
- 동적인 HTML을 생성
- 사용자 요구에 따른 HTML을 프로그램에 의해서 생성
- 동적인 HTML 가능 종류 : jsp, asp, php, python(flask, django…)
서블릿 servlet
- server와 Applet의 합성어, 서버에서 실행되는 Applet, 자바를 이용하여 웹에서 실행되는 프로그램을 작성하는 기술
- 서블릿은 자바 클래스 형태의 웹 어플리케이션, HttpServlet 클래스를 상속받은 클래스가 서블릿
- HttpServlet은 웹 서비스가 가능한 웹 어플리케이션을 제작할 수 있도록 자바를 확장해 놓은 클래스로 톰캣을 설치하면 제공된다.
JSP Java Server Page
- 자바로 서버 페이지를 작성하기 위한 언어
- HTML과 JSP 태그(스트립트릿)로 구성되어 화면을 작성하는데 유리한 웹 프로그래밍 기술
- <% %> : 스크립트릿 scriptlet
- <%= %> 표현식(expression)
jsp 문장 구성요소
- 지시자 <%@지시자명령어 >
jsp를 수행하기 전에 선행 처리 되어야 할 내용을 기술
<%@ [ page | taglib | include ] => 지시자 - 스크립트릿 <% %>
온갖 자바 문장이 올 수 있고, jsp 안에 여러 번 올 수 있음
하지만, jsp에서 쓰다보면 자바와 HTML이 섞여서 복잡해 보인다.
스크립트릿 안에 변수를 선언하면 해당 메소드의 지역변수가 된다. - 표현식 <%= %>
자바 프로그램의 실행 결과(변수 / 메소드 호출 문) 출력하기 위해 사용
메소드 호출문이 오는 경우는 리턴 값이 있어야 한다.
표현식 안에는 ;이 올 수 없다. 문장이 올 수는 없음 - 선언문 <%! 내용 %>
내용에는 변수선언이나 메소드 정의가 올 수 있다.
선언문 안에 변수를 선언하거나 메소드를 정의하면 서블릿의 멤버가 된다.
자바 프로그램 구현 케이스
- 복잡한 기능의 경우 JSP에서 직접 자바 문법을 사용하기 보다는 서블릿 doGet( ) 또는 doPost( ) 메소드에 작성 후 JSP에서 request 객체에 저장된 속성값을 얻어와 출력
- 로직과 표현을 분리하여 프로그래밍 하는 것을 MVC 패턴이라고 함
서블릿이 비즈니스 로직을 구현하는 Model 역할을 하고 JSP가 결과를 출력하는 View 역할을 함
반응형
'Java | spring > JSP | MVC 패턴' 카테고리의 다른 글
JSP 서블릿 한글 세팅(한글 깨짐 해결 하기) (1) | 2019.05.18 |
---|---|
JSP filter 흐름제어( + 로그인 유지 ex ) (0) | 2019.05.18 |
JSP session, 사용자 상태유지( 로그인 유지 ) (0) | 2019.05.18 |
JSP 문장 구성요소( 지시자, 스크립트릿, 표현식 등) (0) | 2019.05.18 |
JSP에서 중요한 get / post 방식 요청 (0) | 2019.05.18 |
댓글