Servlet / JSP
서블릿/JSP는 자바를 사용해 동적인 웹을 만들기 위해 사용되는 프로그래밍 기술이다.
정적 웹 페이지는 미리 저장된 파일을 요청에 따라 걍 보내는거고, 동적 웹 페이지는 서버에 있는 데이터들을 가공해서 보여주는 방법이다.
예를 들면 로그인처럼 아이디와 비밀번호를 입력하고 로그인 버튼을 누르면 성공/실패 결과를 반환하잖아요? 그런게 동적 웹 페이지이고 이 역할을 서블릿이나 JSP로 할 수 있다.
Servlet : Java에 html 코드를 작성할 수 있음
JSP : html 안에 .Java 코드를 작성할 수 있음
Servlet은 .java 파일로 만들어지고, 자바코드 안에 html을 이런 느낌으로 넣는다.
doGet(){
PrintWriter out = response.getWriter();
out.println("<html>");
out.println(" <body>");
out.println(" <h2> Hello Servlet!!</h2>");
out.println(" </body>");
out.println("</html>");
}
원래 Servlet이 먼저 나왔는데.. 보다시피 굉장히 귀찮게 짜야하는 불상사가 있다.
그래서 나온게 JSP이다.
JSP는 .jsp 파일로 만들어지고, html 코드 안에 자바를 넣는다.
private String name;
public void init(){
name = "농부";
}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>Hello JSP~~!</h2>
<h2>안녕 <%=name%>님! '^'</h2>
</body>
</html>
JSP가 실행되면 Servlet 파일(.java)로 변환되며, 그 Servlet 파일을 컴파일해서 .class 파일로 만든 뒤 html 페이지를 클라이언트에게 전달한다.
MVC (Model-View-Controller) 패턴
MVC 패턴은 Model-View-Controller 의 약자로 세 가지 역할로 나눠서 구성하는 디자인 패턴이다.
Model : 백그라운드에서 동작하는 비즈니스 로직(데이터) 처리
View : 사용자 화면 보여줌
Controller : Model과 View 흐름 제어
운영과 유지보수, 협업을 할 때 분업하기 좋은 패턴이다.
'컴퓨터 > WEB' 카테고리의 다른 글
[Spring] 웹서버(Web Server)와 서블릿 컨테이너(Servlet Container) 의 역할과 처리 순서 (0) | 2022.10.23 |
---|---|
[Spring] Servlet, JSP 그리고 세션을 이용한 로그인, 로그아웃 구현 (1) | 2022.09.25 |
[Django] 장고 User 모델 OneToOneField로 확장해서 사용하기 + 토큰으로 로그인하기 (0) | 2022.05.14 |
[Web] 로그인 메커니즘, 그리고 세션과 쿠키 (0) | 2022.05.10 |
[Django] PythonAnywhere로 Django 프로젝트 배포하기 (0) | 2022.05.01 |