오늘도 어제에 이어 spring강의를 수강했다.
하기 내용을 목표로 삼아 강의를 들었고, 코드를 따라쳐보았다.
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
//save a few customers
repository.save(new Customer("Jack", "Bauer"));
repository.save(new Customer("Amy", "Bob"));
class Person {
private String name;
private String getName() {
return this.name;
}
}
class Tutor extends Person {
private String address;
// Person 클래스를 상속했기 때문에,
// name 멤버변수와 getName() 메소드를 가지고 있습니다.
}
DB기본 중의 기본은, "생성일자"와 "수정일자"를 필드로 가지는 것이다.
Timestamped를 통해 생성일자, 수성일자를 추가 할 수 있다.
@MappedSuperclass // 상속했을 때, 컬럼으로 인식하게 합니다.
@EntityListeners(AuditingEntityListener.class) // 생성/수정 시간을 자동으로 반영하도록 설정
public class Timestamped {
@CreatedDate // 생성일자임을 나타냅니다.
private LocalDateTime createdAt;
@LastModifiedDate // 마지막 수정일자임을 나타냅니다.
private LocalDateTime modifiedAt;
}
(H2-console을 통해 접속해서 확인해보고, SELECT*FROM course;로 조회가 가능하다.)
CRUD란? 정보관리의 기본 기능
→ 생성 (Create)
→ 조회 (Read)
→ 변경 (Update)
→ 삭제 (Delete)
Service의 개념: update/delete로 넘어가기 전에 다루어야 하는 개념
스프링의 구조는 3가지 영역으로 나눌 수 있습니다.
Update 는 Service 부분에 작성
Lombok이란?
: Lombok(이하 롬복)은, 자바 프로젝트를 진행하는데 거의 필수적으로 필요한 메소드/생성자 등을 자동생성해줌으로써 코드를 절약할 수 있도록 도와주는 라이브러리
DTO: 완충재로 활용하는 것이 DTO(Data Transfer Object)
API는 무엇일까?
-> 길어질 것 같아 따로 정리해놓았다.