티스토리 뷰

Goal 

 - JSP와 JSP 기술이 등장한 이유에 대해 알아본다 

 - Servelt과 특징에 대해 알아본다

1. JSP문서 작성하기

 

1-1 JSP란?

 - JSP는 Servlet 클래스를 자동 생성할 때 참고하는 파일.

 ex) hello.jsp --- [JSP 엔진]---> hello_jsp.java(서블릿 클래스) 소스 파일 생성.

 - 웹 브라우저가 요청했을 때, JSP에 해당하는 자바 서블릿 파일이 없거나, JSP 파일이 변경되었을 경우 생성.

 

1-2 JSP 기술이 등장한 이유

 - 서블릿에서 콘텐츠를 출력하려면 스트림 클래스를 사용하여 출력 함수를 호출해야 함

 - 자바에선 복잡한 문자열을 출력하려면 코드 작성이 번거로워 짐

 - 따라서 자바로 콘텐츠를 출력하는 코드를 자동으로 만들기 위해 등장

 

1-3 JSP특징

 - 동적 웹어플리케이션 컴포넌트.

 - .jsp 확장자.

 - 클라이언트의 요청에 동적으로 작동하고, 응답은 html을 이용.

 - jsp는 서블릿으로 변환되어 실행

 - MVC패턴에서 View로 이용됨. 

 

1-4 이클립스에서 JSP 문서 작성하기

 - Server Project생성

 - JSP파일 생성 후 HTML Body태그 사이에 원하는 코드 입력 후 서버에서 실행. 

 - 작성한 JSP파일이 Tomcat 서버에서 가공된 후 화면으로 응답. 소스코드를 보면 HTML파일 

 - 주소는 8181포트에 출력됨.

 

2 JSP 아키택처

 

2-1 아키택처

 - .jsp file(helloworld.jsp) <- 개발자는 jsp파일을 작성

 - Java file(helloworld_jsp.java) <- 개발자가 작성한 jsp파일을 Tomcat이 Java파일로 변환

 - class file(helloworld_sjp.class) <- Java파일을 컴퓨터가 이해할 수 있도록 컴파일러가 class 파일로 컴파일

 - 최종적으로 JVM이 class파일을 인식해서 브라우저로 작성한 jsp파일을 응답해줌 

 

2-2 파일 확인

 - C:\Users\Sungwon\Desktop\eclipse-java-2019-06-R-win32-x86_64\apache-tomcat-7.0.99\apache-tomcat-7.0.99\work\Catalina\localhost\helloworld\org\apache\jsp <- 해당 주소로 들어가면 JSP 파일이 변환된 Java 파일과 Class 파일을 확인 할 수 있다

 

3. Servelt 문서 작성 하기

 

3-1 Servlet 특징  

 - 동적 웹어플리케이션 컴포넌트

 - .Java 확장자

 - 클라이언트의 요청에 동적으로 작동하고, 응답은 html을 이용.

 - java thread를 이용하여 동작

 - MVC패턴에서 Controller로 이용됨.

 

 

3-2 web.xml에 서블릿 맵핑

 - 길고, 보안에 노출되어 있는 경로를 간단하게 맵핑하는 방법. 

 - 기존 경로: http://localhost:8181/helloServelt/servelt/com.javalec.ex.HelloWorld

 - URL맵핑 경로: http://localhost:8181/helloServelt/HS (기존 경로에 비해 간단하게 접근 가능)

 

<servlet>
	<servle-name>helloservelt</servlet-name>
	<servlet-class>com.javalec.ex.HelloServelt</servlet-class>                                        
</servlet>
<servlet-mapping>
	<servlet-name>helloworld</servlet-name>
	<url-pattern>/hw</url-pattern>
</servlet-mapping>

<servle-name>
: 임의의 이름을 만듬.
<servle-class>
: 매핑할 클래스 파일명을 패키지명을 포함하여 정확하게 입력 
<url-pattern>
: servlet-class의 클래스를 매핑할 임의의 이름을 입력함. 주의할 점은 '/'로 시작해야 함




 3-3 어노테이션을 이용한 서블릿 맵핑

 -Java파일에 어노테이션을 통해 맵핑

 -@WebServlet("맵핑주소")

 

*JSP와 Servelt

 - JSP코드는 HTML코드 안에 작성

 - Servelt은 Java파일

 

*스트림 (Stream)

 - 일반적으로 데이터, 패킷, 비트 등의 일련의 연속성을 갖는 흐름을 의미

 - 음성, 영상, 데이터 등의 작은 조각들이 하나의 줄기를 이루며 전송되는 데이터 열

 - 데이터 입출력 처리의 중간자 역할 수행. 데이터의 목표지점은 중요하지 않고, 네트워크, 메모리, 프린터 종류에 상관 없이 해당되는 데이터를 스트림으로 읽어 들이거나 스트림으로 내보냄. 하드웨어적인 복잡한 작업은 스트림이 수행하고, 사용자는 사용만 하면 된다.

댓글