728x90
동적 웹 프로젝트(Dynamic Web Project)란?
말 그대로 동적인 웹 프로젝트이다.
PHP, JSP, ASP, Servlet 등과 같은 파일들을 만드는 프로젝트이다!
그럼 이제 Eclipse에서 어떻게 생성을 하는지 볼게여
Dynamic Web Project 생성 방법
아 맞다 그리고 이거 동적 웹 프로젝트 생성할 때는 Perspective를 Java EE 버전으로 바꾸고 마우스 우클릭을 해야 이 사진처럼 보임!!!
서블릿(Servlet)이란?
클라이언트의 요청을 처리하고, 그 결과를 반환하는 Servlet 클래스의 구현 규칙을 지킨 자바 웹 프로그래밍 기술
클라이언트가 어떤 요청을 하면 그에 대한 결과를 응답해주어야 하는데, 이런 역할을 하는 자바 프로그램이라고 보면 됨!!!
src에는 java를 webcontent에는 웹관련 html,css,js 등등을
- java + web 을 servlet이라 함 → 얘는 java EE 버전에 포함되어 있음
- java EE를 위해서
Servlet의 특징
- 클라이언트의 요청에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트
- html을 사용하여 요청에 응답한다.
- Java Thread를 이용하여 동작한다.
- MVC 패턴에서 Controller로 이용된다.
- HTTP 프로토콜 서비스를 지원하는 javax.servlet.http.HttpServlet 클래스를 상속받는다.
- UDP보다 처리 속도가 느리다.
- HTML 변경 시 Servlet을 재컴파일해야 하는 단점이 있다.
Servlet 생성 방법
클라이언트가 서버한테 요청 (데이터를 보냄) 두가지 방식 → GET, POST
페이지 이동 방식
- 링크
- 주소 입력
- Form
- GET
- POST
→ POST 방식이라고 명시해주지 않는 이상 다 GET 방식!
Servlet 예제
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/hs")
public class HelloSsafy extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println("");
out.println("<html>");
out.println(" <body>");
out.println(" Hello Ssafy!!!<br>");
out.println(" 안녕하세요 여러분~");
out.println(" </body>");
out.println("</html>");
}
}
서블릿은 기본적인 구조할 때는 ㄱㅊ지만, 복잡한 디자인은 서블릿으로 쓰기 힘듦
그래서 나온게 JSP임!
서블릿은 html in Java
JSP는 Java in html(html 쫙 코딩하고 중간중간에 자바를 넣으면 되겠다는 발상!)
728x90