자바에서 클래스에 포함하는 메서드의 구체적인 내용을 작성하지 않고 "상수와 메서드 타입만" 정의한 것
public interface Greet {
/**
* 인사하기
*/
void greeting();
}
public interface Greet {
/**
* 인사하기 (위와 아래는 같다)
*/
public abstract void greeting();
}
public class MorningGreet implements Greet {
@Override
public void greeting() {
System.out.println("좋은 아침입니다.");
}
}
- @Override : 어노테이션은 슈퍼 클래스나 인터페이스의 메서드를
상속 혹은 구현하는 클래스에서 재정의하는 것.
- @Override 를 메서드에 부여하는 것으로 "이것은 재정의된 메서드입니다.
만약 재정의되어 있지 않으면 에러가 발생합니다." 를 알려줌
자바에서는 복수의 데이터를 더 쉽게 사용할 수 있게 해주는 Collection 클래스를 제공한다.
종류 (인터페이스) | 개요 |
---|---|
리스트 (List) | 순서대로 데이터를 저장. 데이터의 중복을 허용 |
세트 (Set) | 순서를 유지하지 않는 집합, 중복을 허용하지 않음 |
맵 (Map) | 키와 값의 쌍으로 이루어진 데이터 집합, 순서는 유지되지 않고 키의 중복을 허용하지 않으며, 값의 중복을 허용 |
이러한 컬렉션의 모음을 "컬렉션 프레임워크" 라고 한다.
이 중 List는 여러 데이터를 순서대로 정렬하여 저장할 때 사용한다. (ArrayList , LinkedList)
클라이언트와 서버의 관계
클라이언트는 서비스를 요청 ↔ 서버는 서비스를 제공
브라우저
인터넷을 사용할 때 이용하는 소프트웨어이다. (ex. 구글 크롬, 인터넷 익스플로러, ...)
애플리케이션과 웹 애플리케이션
애플리케이션 (응용 프로그램)은 응용 프로그램 소프트웨어의 약어이다.
웹 서버
웹 서버는 웹 애플리케이션을 배포하는 서버이다. 웹 서버는 항상 실행되며 클라이언트로부터 액세스(요청)를 계속 기다린다.
HTTP 통신 (프로토콜)
클라이언트와 웹 서버는 HTTP 요청(request)과 HTTP 응답(response)으로 상호작용한다.
이를 HTTP 통신이라고 한다.
- 클라이언트가 브라우저에 URL을 입력 ➡ 2. 클라이언트에서 웹 서버로 HTTP 요청 전송
➡ 3. 웹 서버가 HTTP 요청을 받아 HTTP 요청에 해당하는 HTTP 응답을 클라이언트에 반환
➡ 4. 브라우저가 받은 응답을 표시하고 클라이언트가 확인
GET 메서드와 POST 메서드
HTTP 요청의 유형 중 하나.
6-1. GET 메서드
브라우저에서 웹 서버로 값을 전달할 때 URL 뒤에 값을 더하여 보내는 방식.
URL 뒤에 오는 정보를 '쿼리 스트링(query string)' 또는 '쿼리 문자열' 이라고 한다.
6-2. POST 메서드
브라우저로부터 웹 서버에 값을 보낼 때 '요청 본문(request body)' 이라고 하는 URL에는 보이지 않는 장소에 값을 넣어서 보내는 방법입니다. 개인정보를 등록할 때 입력한 내용을 URL에 표시하지 않으려할 때 POST 메서드를 활용한다.
Lombok을 사용하면 getter 나 setter 등의 코드를 작성하지 않아도 자동으로 구현해주는 기능
Gradle : 최근에 자바 개발의 표준이 되고 있는 빌드 도구
( 빌드 : 요구된 실행 환경에서 동작할 수 있는 형식에 애플리케이션이나 라이브러리를 조립하는 것 )