코드 그라데이션
웹 애플리케이션 만들기의 필수 도구 본문
클라이언트와 서버
* 클라이언트 - 서비스를 요청하는 쪽.
* 서버 - 서비스를 제공하는 쪽
- 즉 서버가 서비스를 제공해 그 서비스를 클라이언트가 사용하는 관계
웹 서버
- 웹 서버는 항상 실행되며 클라이언트로부터 액세스(요청)을 항상 기다린다.
HTTP 통신(프로토콜)
- 클라이언트와 웹 서버는 HTTP 요청(request)과 응답(response) 로 상호작용한다.
<HTTP 통신의 흐름>
1) 클라이언트가 브라우저에 URL을 입력한다.
2) 클라이언트에서 웹 서버로 HTTP 요청이 전송된다.
3) 웹 서버는 HTTP요청을 받아 HTTP 요청에 해당하는 HTTP응답을 클라이언트에게 반환한다.
4) 브라우저는 받은 응답을 표시하고 클라이언트가 이를 확인한다.
GET 메서드와 POST 메서드
- 전자는 브라우저에서 웹 서버로 값을 전달할 때, URL 뒤에 값을 더하여 보내는 방식
(URL 뒤에 오는 정보를 쿼리 스트링이나 쿼리 문자열이라고 한다.)
- 후자는 브라우저로부터 웹 서버에 값을 보낼 때, 'request body'라고 하는 URL에는 보이지 않는 장소에 값을 넣어서 보내는 방법이다.
즉, GET은 지정한 URL에 대한 내용을 받기 위한 메서드, POST는 지정한 URL에 입력 정보를 보내기 위한 메서드.
<둘의 차이는 '브라우저의 즐겨찾기에 등록할 수 있는가'>로 종종 설명됨.
- GET 메서드는 URL에 연결해 데이터를 송신하기 때문에 URL 전체에 검색 데이터를 포함할 수 있지만,
POST 메서드는 검색 데이터를 요청 본문에 저장하기 때문에 즐겨찾기에 등록할 수 없다.
라이브러리 : 편리한 프로그램을 모아 모듈화한 것.
Lombok
- getter와 setter등의 코드를 작성하지 않아도 자동으로 구현해준다.
<사용법>
Gradle
- 빌드(요구된 실행 환경에서 동작할 수 있는 형식에 애플리케이션이나 라이브러리를 조립하는 것) 도구.
빌드 도구의 작업(자동화해줌)
- 필요한 라이브러리를 Repository에서 다운로드함.
- 소스코드를 컴파일
- 테스트 실행하여 보고서 출력해줌.
- 클래스 파일의 아카리브를 생성함.
- 아카이브를 프로덕션 환경에 가까운 환경(=스테이징 환경) 등에 배포함.
'Spring > 핵심 가이드' 카테고리의 다른 글
데이터베이스, 테이블, 엔티티, 리포지토리 (0) | 2023.01.14 |
---|---|
DI 컨테이너와 이것의 다섯가지 규칙 (0) | 2023.01.14 |
핵심 가이드 - 의존성 주입, 관점 지향 프로그래밍 (0) | 2023.01.14 |
스프링 개발을 위한 기초 지식(Java) (0) | 2023.01.14 |
스프링 프레임워크의 구성 및 장점 (0) | 2023.01.14 |