Back End 53

서블릿과 JSP

서블릿과 JSP는 거의 같은것. 서블릿을 발전시킨게 Spring @WebServlet은 @Controller + @RequestMapping과 똑같다. 서블릿의 라이프사이클 @WebServlet("/hello") public class HelloServlet extends HttpServlet { @Override public void init() throws ServletException { // 서블릿 초기화 - 서블릿이 생성 또는 리로딩 때, 단 한번만 수행됨. System.out.println("[HelloServlet] init()"); } @Override // 호출될 때마다 반복적으로 수행됨. public void service(HttpServletRequest request, HttpSer..

Back End/Spring 2023.03.26

MVC 패턴에 관하여

OOP 5대 설계원칙 - SOLID 1. 입력 2. 처리 3. 출력 1. SRP - 단일책임원칙 "하나의 메서드는 하나의 책임만 진다." (책임 = 관심사) 객체지향적으로 좋은 설계를 할려면 코드의 분리를 잘해야한다. 분리의 종류 1. 관심사의 분리 2. 변하는 것과 자 변하지 않는 것의 분리(common code, uncommon code) 3. 공통코드의 분리(중복코드) Controller에서 입력을 받으면 model 객체를 통해 변수를 대신 입력받아 view에 전달해준다. 사용자의 요청이 들어오면 1. 입력(DispatcherServlet)을 처리하고 2.처리(Controller)에게 넘겨주고 다시 결과를 Model에 저장해서 1. 입력을 통해 3. 출력(view)에 넘겨준다.

Back End/Spring 2023.03.26

WAS(Web Application Server)

Web Server: Web을 서비스 WAS(Web Application Server) : 서버에 프로그램을 설치하고 클라이언트가 프로그램을 사용할 수 있게해주는것. 서버에 프로그램을 설치하고 클라이언트가 원격호출해서 사용할 수 있게해주는것. 클라이언트에 일일이 프로그램을 설치하는것이 아닌 서버에 설치해서 클라이언트가 원격으로 서비스를 이용하다보니. 서비스의 업데이트가 필요할때 서버에있는 프로그램을 한번만 업데이트만 시켜주면 되서. 업데이트의 장점이 있다. Server(Tomcat)의 내부구조에대해서 내부에서 Thread Pool(여러 thread를 미리 만들어놨다가 포트를 통해 브라우저에서 요청이오면 쓰레드 하나가 처리를 한다) 안에 Service가 있어서 요청받은 Protocol 종류(Http)에 따..

Back End/Spring 2023.03.25

브라우저에서 HTTP를 받아오는 방법

?year=2021&year=2022&year=2023 String name = request.getParameter("year"); Enumeration enum = request.getParameterNames(); 쿼리스트링의 네임들을 enum형태로 가져온다. Map paramMap = request.getParameterMap(); 맵형태로 key, value값을 가져온다. 만약 쿼리스트링의 name이 같은경우 값을 배열형태로 가져온다. String[] yearArr = request.getParameterValues("year"); HTTP 프로토콜의 특징은 stateless로서 상태를 유지하지않아 클라이언트 정보를 저장하지 않고 상태를 유지하지 않는다. 즉슨 클라이언트 정보를 저장하지 않아 요..

Back End/Spring 2023.03.25

스프링의 정석 by 남궁성 - 개요

fastcampus 강의를 공부하며 정리한것들 Chapter 1. Spring Framework를 배울 준비하기 - 개발도구, 설치, 설정 2. Spring MVC - 웹의 기초, HTTP 3. Spring DI 4. Spring AOP 5. MyBatis 6. REST API 7. Spring MVC로 웹사이트 만들어보기 Web framework으로 유명한게 Structs랑 Spring인데 유지보수가 쉽고, 생산성이 높다는 장점이 있다. 1. 자바기본 꾸준히 복습 2. 실습 많이 -> 이론 "반복만이 살길이다" 감잡힐때까지 원격 컴퓨터에 WAS(TOMCAT같은)가 필요하다 그래야 브라우저에서 url을 입력을해서 원격프로그램을 실행가능 웹에서 브라우저로 서버에 있는 프로그램을 실행할려면 프로그램을 등록해..

Back End/Spring 2023.03.24