자바란 무엇일까?
내가 가지고 있는 정보
스프링은 프레임워크다.
→ 아직 "framework" 단어의 정의가 되어 있지 않다.
java 언어를 사용한다
→ java 무엇인가?
개발의 편의성은 오르지만, 원리 파악을 하기에 더욱 더 많은 시간이 소요된다.
기본 레이어
Controller
→ 클라이언트의 요청을 받고
→ 요청에 대한 처리는 서비스에게 전담
→ 클라이언트에게 응답
Service
→ 비니지스 로직을 처리
? 비지니스 로직:서버에서 사용자의 요구사항 처리
→ DB 정보가 필요할 떄 Respository에게 전달
Respository
→ DB 관리 (연결, 해제, 자원 관리)
→ DB CRUD 작업 처리

→ Java코드에 @로 시작해서 클래스나 메소드 선언문 바로 위에 쓰이게 된다.
어노테이션은 코딩할때는 @로 표시만 하면 되지만, 컴파일 될 때 약속했던 특별한 의미를 가지게 된다.
어노테이션은 너무 많아서 미리 다 알기 힘들다,
검색하는 습관을 가지자.
@SpringBootApplication
public class Class01Application {
public static void main(String[] args) {
SpringApplication.run(Class01Application.class, args);
}
}
Class ?
→ 정보를 묶는 것
? Class 동물
동물 Class에는 동물이 하는 멤버 변수 :: Action, 동물을 구성하는 element
변수 course 는 실제 빵, Course 클래스는 빵틀
Object-Oriented-Programming (객체 지향 프로그래밍)
→ 질서 없는 호출과 실행은 그만!
→ 현실 세계에 빗대어 체계적으로 해보자! 가 핵심이다.
Constructor
→ course 생성자
클래스명과 똑같은 이름을 가진 메소드를 "생성자"라고 부른다.
클래스 변수를 새롭게 만들 때 사용된다.
→courser 컨트롤을 위해!
아까 말씀드린, 빵틀(Course)과 빵(course)의 관계 기억나시나요?
우리가 바꾸고 싶은 건 빵틀의 값이 아니라 실제 빵의 값입니다.
this 라고 표시함으로써, 빵틀 전체의 값을 바꾸는게 아니라 빵 하나의 값만 바꾸는 것이죠!