전체 글 202

[Spring MVC1] 4. MVC 프레임워크 만들기

김영한 [스프링 MVC 1편] - 강의정리  프론트 컨트롤러 패턴 소개FrontController 패턴  특징프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출입구를 하나로 하여 공통처리 가능프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿으 사용하지 않아도 된다.스프링 웹 MVC의 DispatcherServlet이 FrontController 패턴으로 구현되어 있다. 프론트 컨트롤러 도입 - v1프론트 컨트롤러 분석urlPatternsurlPatterns = "/front-controller/v1/"-> /front-controller/v1 를 포함한 하위 모든 요청은 이 서블릿에서 받아들인다. View 분리 - v2 Model 추가 - v3서블릿..

회사 2024.09.10

[Sprint MVC1] 3. 서블릿

김영한 [스프링 MVC 1편] - 강의정리 JSP로 회원관리 웹 애플리케이션 만들기서블릿과 JSP의 한계서블릿으로 개발할땐 뷰화면을 위한 HTML을 만드는 작업이 자바 코드에 섞여 지저분하고 복잡하다.JSP를 사용한 덕분에 HTML 작업을 깔끔하게 처리하고, 동적으로 변경이 필요한 부분만 자바코드를 적용했다.그러나 JAVA코드, 리포지토리 등 다양한 코드가 JSP에 노출돼있다.즉, JSP가 너무 많은 역할을 한다.MVC 패턴비즈니스 로직은 서블릿처럼 다른 곳에서 처리하고, JSP는 목적에 맞게 HTML로 화면을 그리는 일에 집중하는 것이 MVC 패턴이다. MVC 패턴 - 개요변경의 라이프사이클UI 일부를 수정하는 일과, 비즈니스 로직을 수정하는 일은 각각 다르게 발생할 가능성이 매우 높고, 서로에게 영향..

[DB] 인덱스와 파티션 차이

https://prde.tistory.com/128 MySQL 인덱스(Index) & 파티션Partition & Full-Text Search1. 인덱스 Select시 빨리 추출 가능(수정, 변경 작업 많은 곳에 쓰면 성능 나빠질 수 있다. ) 종류 : 클러스터형 인덱스(영어사전 같은 것), 보조 인덱스(책뒤 찾아보기 기능 같은 것) 클러스터형 인prde.tistory.com https://trillium.tistory.com/128 [IT] 샤딩(Sharding) / 샤드(Shard) - DB의 수평적 규모 확장📂 데이터베이스의 규모 확장 저장할 데이터가 많아지면 데이터베이스에 대한 부하도 증가하게 된다. 그때가 오면 데이터베이스를 증설할 방법을 찾아야 한다. 데이터베이스의 규모를 확장하trilliu..

회사 2024.09.09

[Spring MVC1] 2. 웹 애플리케이션 이해

김영한 [스프링 MVC 1편] - 강의정리 HttpServletRequest - 개요HttpServletRequest 역할HTTP 요청 메시지를 개발자가 직접 파싱해도 되지만, 매우 불편하다.서블릿은 개발자가 HTTP 요청메시지를 편리하게 사용할 수 있도록 개발자 대신 HTTP 요청을 파싱한다.그 결과를 HTTPServletRequest 객체에 담아 제공한다. HTTP 요청 메시지POST /save HTTP/1.1Host: localhost:8080Content-Type: application/~username=kim&age=20START LINEHTTP 메소드URL쿼리 스트링스키마, 프로토콜헤더헤더조회바디form 파라미터 형식 조회message body 데이터 직접 조회임시 저장소 기능해당 HTTP 요..

카테고리 없음 2024.08.23

[Spring MVC1] 1. 웹 애플리케이션 이해

김영한 [스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 강의 정리웹 서버, 웹 애플리케이션 서버웹 - HTTP 기반HTTP 메시지에 모든것을 전송한다.HTML, TEXT, 이미지, 영상, 파일, JSON, XML 등 거의 모든 형태의 데이터 전송이 가능하다.서버간 데이터를 주고받을 때도 대부분 HTTP 사용한다. 웹 서버HTTP 기반으로 동작한다.정적 리소스 제공정적(파일) HTML, CSS, JS, 이미지, 영상 등ex) NGINX, APCHE 웹 애플리케이션 서버 (WAS)HTTP 기반으로 동작한다.웹서버 기능을 포함한다.프로그램 코드를 실행해 애플리케이션 로직을 수행한다.동적 HTML, HTTP API(JSON)서블릿, JSP, 스프링 MVCex) 톰캣 웹 서버 vs 웹 애플리케이션 서버사실 ..