sooyoungh / blog

Servlet, Spring, Spring Boot 3가지 방식으로 구현한 Blog

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Blog

📝 Web Architecture를 공부하기 위해 구현한 블로그(게시판) 프로젝트
  1. JSP + Servlet
  2. JSP + Spring MVC
  3. Front + Back(Spring Boot)

ver1. JSP + Servlet

image

✏️ 가장 단순한 MVC2 패턴으로, M,V,C가 분리되어 있다.
  • Jsp (View)
  • Servlet (Controller)
  • JavaBeans (Model)

동작 과정

1. 서블릿(Controller)이 요청을 받는다. 
2. 자바 빈(Model)이 비즈니스 로직 처리 후, 뷰(jsp)에 반환한다. 
3. 뷰(jsp)는 결과를 전달받아 최종 화면을 출력한다.

ver2. JSP + Spring MVC

image

✏️ 모든 요청/응답을 받는 FrontController을 도입한 Spring MVC 구조로, 
    FrontController가 Controller/View를 찾아 요청/반환을 담당한다.
  • Jsp (View)
  • Spring Framework (Controller + Model)
    • Controller
    • Service
    • Dao

동작 과정

1. 모든 요청은 Front Controller(Dispatcher-Servlet)이 받아서 해당하는 Controller를 찾는다. 
2. 해당 요청에 따른 비즈니스 로직 처리 후 Front Controller에 반환한다.
3. 해당하는 뷰(jsp)를 찾아 Front Controller에 반환, 최종 출력한다.

ver3. Front + Back(Spring Boot)

image

✏️ 프로그램이 확장됨에 따라 프론트와 백엔드를 분리한 웹 구조로, 
    서로 Http 통신하여 json형태로 데이터를 주고 받는다.
  • Front : Html, Css, Javascript
  • Back : Spring Boot

동작 과정

1. 프론트에서 요청을 받으면 Ajax 통신으로 백에 전달한다. 
2. 백에서 Controller-Service-Repository 계층 각각에 맞게 로직 처리하고 결과를 프론트에 반환한다.
3. 프론트에서 해당 결과를 토대로 뷰(Html)를 출력한다.

About

Servlet, Spring, Spring Boot 3가지 방식으로 구현한 Blog


Languages

Language:Java 100.0%