웹 개발/웹 개발 개념 (5) 썸네일형 리스트형 서블릿 생명주기 메서드 서블릿 생명주기 메서드? 서블릿 실행 단계마다 호출되어 기능을 수행하는 콜백 메서드 초기화 init() 서블릿 요청 시 맨 처음 한번만 호출 서블릿 생성 시 초기화 작업 주로 수행 실행 초기에 서블릿 기능 수행과 관련된 기능 설정 용도 작업 수행 doGet() doPost() 서블릿 요청 시 매번 호출 실제로 클라이언트가 요청하는 작업 수행 do로 시작하는 메서드는 서블릿의 핵심 기능 처리(반드시 구현!!) 종료 destroy() 서블릿이 기능을 수행하고 메모리에서 소멸될 때 호출(+종료 작업) 서블릿의 마무리 작업 주로 수행 기능이 필요없다면 생략 가능 서블릿 API 계층 구조와 기능 서블릿 클래스 계층 구조 서블릿 API -> Servlet과 ServletConfig 인터페이스를 구현하여 제공 GenericServlet 추상 클래스 -> 두 인터페이스의 추상 메서드 구현 HttpServlet -> GenericServlet을 다시 상속받음 서블릿 API 구성 요소 특징 Servlet 인터페이스 javax.servlet 패키지에 선언되어 있음 Servlet 관련 추상 메서드 선언 init(), service(), destroy(), getServletInfo(), getServletConfig() 선언 ServletConfig 인터페이스 javax.servlet 패키지에 선언되어 있음 Servlet 기능 관련 추상 메서드가 선언되어 있음 getInitParameter(), getIni.. 서블릿의 정의와 특징 서블릿이란? 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스 1. 클라이언트가 웹 서버에 요청 2. 웹 서버는 웹 애플리케이션 서버(WAS, ex. 톰캣)에 요청을 위임 3. WAS는 각 요청에 해당하는 서블릿 실행 4. 서블릿은 요청에 대한 기능을 수행한 후 결과 반환하여 클라이언트에 전송 서블릿의 특징 1. 서버 쪽에서 실행되면서 기능을 수행 2. 기존의 정적인 웹 프로그램의 문제점 보완 -> 동적인 기능 제공 3. 스레드 방식으로 실행 4. 자바로 만들어져 자바의 특징(객체 지향) 5. 컨테이너에서 실행 6. 컨테이너 종류에 상관없이 실행 (플랫폼 독립적) 7. 보안 기능 적용하기 용이 8. 웹 브라우저에서 요청 시 기능 수행 데이터베이스, 스프링 웹 MVC구조 데이터베이스는 테이블이라는 구조로 데이터를 저장함 테이블별로 같은 성격의 데이터 저장 테이블에 프로젝트에 필요한 모든 데이터 저장 데이터의 중복, 수정 및 저장의 용이성을 위해 데이터를 분리해서 저장 관련이 있는 데이터가 저장된 테이블 간에는 관계를 맺어 관리 테이블 관계 각각의 테이블마다 필드명들로 구성 각각의 테이블은 서로 연관되어 데이터를 상호 가져옴 ex) 테이블명이 T_CARD인 테이블의 CARD_IMAGE_VARCHAR(50)이라는 필드명을 가진 필드는 테이블명이 T_CARD_TYPE인 테이블의 CARD_TYPE_NAME VARCHAR(50)이라는 필드와 연관되어 있음!! 테이블명: t_board 필드(칼럼): 각각의 데이터를 구분하게 하는 하나의 명칭 (ex. MEMBER_SEQ, BOARD.. 스프링부트 스프링부트 이용해서 프로젝트 다운로드 받기 https://start.spring.io/ 이 화면에서 스프링부트를 활용해 편리하게 프로젝트를 생성해줍니다. 1. Project - Gradle (빌드 도구) 2. Language - Java 3. Spring Boot - 괄호 없는 버전 추천 (SNAPSHOT은 현재 개발 중인 불안전한 버전) 4. Project Metadata - 회사 그룹 주소 입력 5. Packaging - 웹 개발을 모두 완료하고 웹 서비스에 배포할 때 사용되는 최종적인 파일 * War -> 데이터베이스와 아파치 톰캣을 이용해서 웹 서비스를 진행 가능 6. Java - 20 버전 7. Dependencies - 스프링 개발은 여러가지 기능을 가지고 있는 객체들, 즉 기능들을 서로 연결.. 이전 1 다음