WS ? WAS?
WS (Web Server) : 데이터 수정없이 HTML 파일들만 주는것을 정적이라고 칭하고 WS 가 그 역할을 맡아서 request 가 들어오면 response 를 HTML 파일을 주게된다. - 정적
WAS (Web Application Server) : 데이터를 수정하고 데이터를 주면 WAS 가 그 역할을 맡아서 request 가 들어오면 response 에 데이터를 담아서 주게 된다. - 동적
이를 통해 Apache Tomcat -> WS 와 WAS 를 합친것을 알수 있다.
대표적인 예 Nginx, Apach HTTP Server ( 분산 처리 )
RESTful API 란?
Client <-> Server 와 통신할려고 만든 방법을 정의한 것입니다.
HTTP 방식이 있는데 GET, POST, PUT, DELETE 로 method 방식을 정해 request 를 보내 response 을 받는것이 RESTful API 라고 할수 있다. 하지만 GET 은 Body 가 존재 하지 않다.
HTTP 란?
데이터를 주고 받는 양식을 정의한 통신 규약중 하나가 HTTP 이다.
컴퓨터끼리 데이터를 주고 받을때 정해둔 약속.
모든 브라우저는 HTTP 프로토콜을 기본으로 지원한다.
request 와 response 가 존재하고 유저가 request 를 서버에 날리면 서버에서 response 을 유저에게 준다.
Header, Payload 가 존재하고 Get 빼고는 모두 Payload를 보낼수 있다. 즉 request 를 보낼때 Payload 를 같이 보낼수 없다. ( body 존재 X )
MVC 란?
Model View Controller 가 있고
Client 에서 Webser 로 보내고 Routes 로 그리고 Dispatcher 를 통해 Controller 로 들어오게 되고 여기서 Model 또는 View 중을 골라 다시 Client
에게 준다. 디자인 패턴들중에 하나이다. 또한 로직을 분리함으로써 개발자들의 협업을 더 편리하게 할수 있고 코드의 재사용성과 유지보수를 용이하다.
FrontController 패턴을 중심으로 설계 되어 있으며 모델은 유연하고 다양한 워크 플로우를 지원한다.
즉, DispatcerServlet 이 중앙에서 HTTP 요청을 처리한다.
DispatcerServlet 란?
Servlet 은 자바를 사용하여 웹 페이지를 동적으로 생성하는 서버 측 프로그램 혹은 그 사양을 말한다.
DispatcherServlet이 Handler mapping 을통해 Controller 에 요청하고 Controller 에서 Model 이나 View 찾아서 response 한다.
Servlet 란?
Tomcat 안에 Servlet 이 작동되고 있고, 클라이언트가 request를 날리면 Servlet 이 HttpServletRequest,HttpServletResponse
즉 자바파일로 변환시켜서 Servlet 분석을 하고 (web.xml) 찾은 Servlet 을 service 에게 넘겨준다.
3 Layer 아키텍쳐 란?
3 Layer 아키텍쳐는 디자인 패턴으로 Service repository Controller 분리하여 관리하는것이 3 계층 아키텍쳐 라고 한다.
Jackson 란?
Spring 에 내장된 라이브러리이다.
Json -> Object 로
Object -> Json 로 바꿔 주룻 있는것을 라이브러리중에 Jackson 이라고 한다.
ObjectMapper objectMapper = new ObjectMapper();
System.out.println(objectMapper.writeValueAsString(new Star("test",17)));
JDBC이란 ?
Connection 을통해 연결하여 Statement 를 통해 SQL 작성하고 DB 에 SQL 날리게 되면 결과를 ResultSet 을 통해 받게 된다. 이것이 바로 JDBC 이다. 다만 DB 마다 JDBC 는 다르기 때문에 주의하자.
Spring Boot 란?
어노테이션을 적극적으로 간편하게 설정할수 있다.
또한 어노테이션의 default 값을 기본적으로 설정 되어 있어서.
매우 편리하다. 외부라이브러리나 내부 라이브러리가 의존성이 관리가 쉬워졌다.
내장 Apache Tomcat 이 있어 아까와 말했듯이 WS 와 WAS 를 분리한게 내장되어 있어 강력하다.
Spring MVC 란?
Model View Controller 가 있고
Client 에서 Webser 로 보내고 Routes 로 그리고 Dispatcher 를 통해 Controller 로 들어오게 되고 여기서 Model 또는 View 중을 골라 다시 Client 에게 준다. 디자인 패턴들중에 하나이다. 또한 로직을 분리함으로써 개발자들의 협업을 더 편리하게 할수 있고 코드의 재사용성과 유지보수를 용이하다.
FrontController 패턴을 중심으로 설계 되어 있으며 모델은 유연하고 다양한 워크 플로우를 지원한다.
즉, DispatcerServlet 이 중앙에서 HTTP 요청을 처리한다.
'TIL' 카테고리의 다른 글
2023-06-26 TIL (0) | 2023.06.27 |
---|---|
2023-06-25 TIL (0) | 2023.06.26 |
DB 연결 오류... (0) | 2023.06.22 |
인텔리제이 환경변수 오류 (0) | 2023.06.17 |
DB 예약어 Table 이름 (0) | 2023.06.13 |