JSP&Servlet) JSP, Servlet 맛보기
- protocol : 네트워크상에서 약속한 통신규약입니다. (ex. Http, FTP, SMTP, POP, DHCP)
- IP : 네트워크상에서 컴퓨터를 식별할 수 있는 주소입니다.
- DNS : IP주소를 인간이 쉽게 외우도록 맵핑한 문자열입니다.
- Port : IP주소가 컴퓨터를 식별할 수 있게 해준다면, Port번호는 해당 컴퓨터의 구동되고 있는 프로그램을 구분할 수 있는 번호입니다.
http://www.sba.seoul.kr:80/kr/index
프로토콜://컴퓨터 주소:포트번호/information_path
- 컴포넌트 : JSP, Servlet, HTML 등의 웹 어플리케이션을 구현하기 위한 구성요소입니다.
- 웹 컨테이너(JSP&Servlet)
JSP(Java Server Page) : HTML 파일 내에 Java 언어를 삽입한 문서입니다.
Servlet(Server Applet) : Java 언어로 이루어진 웹프로그래밍 문서입니다.
- 웹프로그램의 동작
클라이언트 <-> 웹서버 <-> 웹어플리케이션 서버 <-> 데이터베이스
웹서버 : 클라이언트의 요청에 의해 정보를 제공해주는 서버 (Aphach, IIS)
별도의 구현이 필요한 로직이 있을 경우 웹어플리케이션 서버에 요청
웹브라우저 : 웹서버에 정보를 요청하고, 웹서버로부터 정보를 받는 매개체, 이때 HTTP프로토콜을 사용합니다.
- 필요한 학습
java, html, javaScript, jquery, css
- JSP문서 작성하기
- JSP 특징
- .jsp 확장자, 클라이언트 요청에 동적으로 작동하고, 응답은 html을 이용합니다.
- jsp는 서블릿으로 변환되어 실행, MVC패턴에서 View로 이용됩니다.
- JSP 아키텍처
- 아키텍처
- Servlet 문서 작성하기
(web.xml이나 annotation을 이용한 mapping)
- Servlet 특징 : .java 확장자, java thread를 이용하여 동작합니다.
- web.xml에 서블릿 맵핑 : 너무 길고 보안에 노출되어 있는 경로를 간단하게 맵핑하는 것 입니다.
<servlet-name>
: 임의의 이름을 만들어 줍니다.
<servlet-class>
: 매핑할 클래스 파일명을 패키지명을 포함하여 정확하게 입력 합니다.
<url-pattern>
: servlet-class의 클래스를 매핑할 임의의 이름을 입력합니다. 주위할 점은 '/' 로 시작해야 합니다.
HttpServlet -> GenericServlet(abstract) -> Servlet(interface)
- 요청처리객체 및 응답처리객체를 톰캣에서 받습니다.
- GET&POST 방식
- GET방식 : url값으로 정보가 전송되어 보안에 약합니다.
- POST방식 : header를 이용해 정보가 전송되어 보안에 강합니다.
- doGet()
- html form태그의 method속성이 get 일 경우 호출됩니다.
- 웹브라우저의 주소창을 이용하여 servlet을 요청한 경우에도 호출 됩니다.
protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
response.setContentType("text/html; charset=euc-kr");
PrintWriter writer = response.getWriter();
writer.println("");
writer.println("");
writer.println("");
writer.println("");
writer.println("Hello World");
writer.println("");
writer.println("");
writer.close();
}
- Context Path
source : https://www.inflearn.com(신입SW인력을 위한 실전 JSP&Servlet)
댓글 없음: