스프링은 3개 레이어가 있다!
왜? 자바의 언어가 길어지지 않도록 구분하기 위해.
객체지향 프로그래밍(객체마다 하는일이 따로 정해져있음)
*객체 : 현실세계를 (상태(변수), 메소드=동작(행위)로) 표현한 것
(클래스로 실행하는건 객체, 클래스 실행이 아닌건 객체가 X)
- Controller : 클라이언트의 요청받고, service에서 처리한 일 클라이언트에게 응답.
- Service : 비즈니스 로직을 처리.
- Repository : DB관리, CRUD 작업처리
클라이언트 > Controller > Service > Repository > DB
DB > Repository > Service > Controller > 클라이언트
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
public class Course {
public String title;
public String tutor;
public int days;
}
Course 라는 클래스를 생성해 준 뒤, (Course.java)
public class Prac {
public static void main(String[] args) {
Course course = new Course();
course.title = "웹개발의 봄, Spring";
System.out.println(course.title);
System.out.println(course.tutor);
}
}
main이 있는 Prac 이라는 클래스에서 받아와서 사용. (Prac.java)
JPA
(Java Persistence API) 는 데이터베이스 프레임워크