본문 바로가기

Spring

[스프링 프레임워크] 2. 기초 지식 배우기

728x90

 

 

1. 자바 기초 지식 복습

1) 인터페이스란?

  • 인터페이스 선언 : interface 키워드 사용
  • 인터페이스 내에 선언된 메소드는 "(public abstract) 반환형식 메소드명();" 의 형태
  • 인터페이스 내에 선언된 변수는 "(public static final) 변수형식 변수명;"의 형태
  • 인터페이스 구현 시 implements키워드를 사용

 

2) 리스트란?

  • 복수의 데이터를 더 쉽게 사용할 수 있는 컬렉션의 종류, 용도
    • 리스트(List) : 순서대로 데이터 저장, 데이터 중복 허용
    • 세트(Set) : 순서를 유지하지 않는 집합, 중복 허용 X
    • 맵(Map) : 키와 값의 쌍으로 이루어진 데이터 집합. 순서 유지 X, 키의 중복 허용 X, 값의 중복 허용O
  • 리스트는 여러 데이터를 순서대로 정렬해 저장할 때 사용
    • ArrayList
      요소를 배열로 유지해 요소의 검색을 고속으로 처리 가능
      요소의 수가 많아지면 추가 / 삭제 시 시간이 오래걸림
    • LinkedList
      요소끼리 전후 양방향의 링크로 참조하는 리스트 구조를 이용해 관리해 요소의 추가 / 삭제가 ArrayList보다 빠름
      특정 요소 검색과 같은 인덱스 값에 의한 무작위 액세스에 부적합

 


 

2. 웹 애플리케이션 만들기의 필수 지식 확인

1) 클라이언트와 서버

  • 클라이언트 : 서비스를 요청
  • 서버 : 서비스를 제공

 

2) 브라우저

  • 인터넷 사용 시 이용하는 소프트웨어

 

3) 애플리케이션과 웹 애플리케이션

  • 애플리케이션, 응용 프로그램 : 프로그래밍 언어로 작성한 소프트웨어
  • 웹 애플리케이션, 웹 응용 프로그램 : 인터넷을 통해 사용되는 응용 프로그램

 

4) 웹 서버

  • 웹 애플리케이션을 배포하는 서버
  • 웹 서버는 항상 실행되고 클라이언트로부터 액세스를 기다림

 

5) HTTP 통신, 프로토콜

  • HTTP 요청(request)와 HTTP 응답(response)로 클라이언트와 웹 서버 상호작용
  • 클라이언트 요청에 웹 서버가 응답
  • HTTP 통신 흐름
    • 클라이어느가 브라우저에 URL 입력
    • 클라이언트에서 웹 서버로 HTTP 요청 전송
    • 웹 서버 HTTP 요청을 받아 요청에 해당하는 응답을 클라이언트에 반환
    • 브라우저는 받은 응답을 표시하고 클라이언트가 확인

 

6) GET메서드와 POST메서드

  • GET 메소드
    • 브라우저에서 웹 서버로 값을 전달할 때 URL 뒤에 값을 더해 보내는 방식
    • URL에 대한 내용을 받기 위한 메소드
    • URL 뒤에 더한 값 = 쿼리 스트링, 쿼리 문자열
      • URL 끝에 '?'가 붙어 쿼리 스트링의 시작을 알림
      • 형식 :  이름 = 값
      • 여러 값 전달 시 &으로 연결
  • POST 메소드
    • 브라우저에서 웹 서버로 값을 보낼 때 URL의 보이지 않는 장소인 요청 본문에 값을 넣어 보내는 방법
    • 지정한 URL에 입력 정보를 보내기 위한 메소드

 


 

3. 개발에 사용하는 편리한 라이브러리와 도구

1) Lombok

  • 자바 라이브러리 중 하나
  • getter, setter와 같은 코드를 작성하지 않아도 자동으로 구현해줌

 

2) Gradle

  • 빌드 도구
    • 요구된 실행 환경에서 동작할 수 있는 형식에 애플리케이션이나 라이브러리를 조립할 수 있게 해주는 도구
    • 필요한 라이브러리를 리포지토리에서 다운로드
    • 소스코드 컴파일
    • 테스트 실행, 결과 확인
    • 클래스 파일 아카이브 생성
    • 아카이브를 스테이징 환경 등에 배포
  • 여러 작업을 자동으로 해줌
728x90