Spring Framework(12)
-
3. 서블릿, JSP, MVC 패턴
[목차] 1. 회원 관리 웹 애플리케이션 요구사항2. 서블릿으로 웹 애플리케이션 만들기3. JSP로 웹 애플리케이션 만들기4. 서블릿과 JSP를 사용한 MVC 패턴으로 웹 애플리케이션 만들기 1. 회원 관리 웹 애플리케이션 요구사항기능 요구사항: 회원 저장, 회원 전체 목록 조회회원 정보: 이름, 나이 @Getter @Setterpublic class Member { private Long id; private String username; private int age; public Member(String username, int age) { this.username = username; this.age = age; } public Mem..
2025.04.22 -
2. 서블릿
1. 서블릿 1) 서블릿 컨테이너 동작 방식 웹 브라우저에서 HTTP 요청 메시지가 전달됨-> 서버에서 HTTP 요청 메시지를 기반으로 request, response 객체 생성 -> 서블릿 컨테이너에 요청 전달해서 요청 url에 맞는 서블릿 객체 받아서 실행-> 서블릿에서 response 객체에 데이터 세팅-> 서버에서 response 객체 정보로 HTTP 응답 메시지 생성-> 웹 브라우저에 HTTP 응답 메시지 전달 2) 서블릿 클래스 기본 코드 @WebServlet(name = "helloServlet", urlPatterns = "/hello")public class HelloServlet extends HttpServlet { @Override protected void servic..
2025.04.21 -
1. 웹 애플리케이션 이해 (2)
[목차]1. 웹 서버, 웹 애플리케이션 서버2. 웹 애플리케이션 서버의 역할: HTTP 메시지 처리와 서블릿 컨테이너 3. 서블릿4. 동시 요청 - 멀티 쓰레드5. HTML, HTTP API, CSR, SSR6. 자바 백엔드 웹 기술 역사5. HTML, HTTP API, CSR, SSR1) 서버 → 클라이언트로 보내는 데이터 종류정적 리소스변하지 않는 파일HTML, CSS, JavaScript 파일, 이미지 파일 등이 이에 해당HTML 문서 → SSR 방식서버에서 동적으로 필요한 HTML 파일을 완성해서 브라우저에 전달서버는 JSP, 타임리프와 같은 뷰 템플릿 엔진을 사용하여 동적 HTML을 만든다 JSON, XML 등 순수 데이터 (HTTP API 응답) → CSR 방식 화면이 아닌 순수 데이터만 전달..
2025.04.17 -
1. 웹 애플리케이션 이해 (1)
[목차]1. 웹 서버, 웹 애플리케이션 서버2. 웹 애플리케이션 서버의 역할: HTTP 메시지 처리와 서블릿 컨테이너 3. 서블릿4. 동시 요청 - 멀티 쓰레드5. HTML, HTTP API, CSR, SSR6. 자바 백엔드 웹 기술 역사1. 웹 서버, 웹 애플리케이션 서버1) HTTP인터넷이란? 전 세계 컴퓨터들을 하나로 연결하는 거대한 컴퓨터 통신망. 모든 데이터가 이 망을 통해 전달된다. 웹이란? 인터넷 위에서 동작하는 하나의 서비스. 인터넷에 연결된 사용자들이 웹 브라우저(크롬, 사파리 등)를 통해 정보를 주고받는 공간이다. HTTP란? 웹 브라우저와 웹 서버가 서로 데이터를 주고받는 통신 규칙웹 브라우저가 서버에게 요청(Request)하면, 서버는 HTML, JSON 같은 데이터를 응답(Resp..
2025.04.17 -
7. 빈 스코프
1. 빈 스코프란?빈 스코프란 빈이 존재할 수 있는 범위를 뜻한다. 스프링은 다음와 같은 다양한 빈 스코프를 지원한다. 싱글톤: 디폴트 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프프로토타입: 스프링 컨테이너가 빈의 생성과 의존관계 주입, 초기화까지만 관여하고 더는 관리하지 않는 짧은 범위의 스코프웹 관련 스코프request: 웹 요청이 들어오고 나갈 때까지 유지되는 스코프session: 웹 세션이 생성되고 종료될 때까지 유지되는 스코프application: 웹의 서블릿 컨텍스트와 같은 범위로 유지되는 스코프 빈 스코프 별 용도 singleton대부분의 서비스, 리포지토리 등재사용 + 메모리 효율 좋음prototype매번 새로운 객체가 필요할 때 예: 사용자 요청마다 새로운..
2025.04.15 -
6. 빈 생명주기 콜백
1. 스프링 빈 생명주기 흐름 1. 스프링 컨테이너 생성2. 컴포넌트 스캔 및 BeanDefinition 등록3. 객체 생성 및 의존성 주입4. 초기화 콜백5. 빈 사용6. 스프링 컨테이너 종료 시, 소멸 콜백7. 빈 소멸, 스프링 컨테이너 종료1) 스프링 컨테이너 생성new AnnotationConfigApplicationContext(설정정보.class) 2) 컴포넌트 스캔 및 빈 등록(BeanDefinition 등록)설정정보 클래스에 @ComponentScan이 붙어 있으면, 스프링이 클래스패스를 뒤져서 @Component, @Service, @Repository, @Controller 등 스캔 대상이 되는 클래스들을 찾아냄.찾은 클래스들은 BeanDefinition이라는 이름표(설계도) 형태로 스..
2025.04.14