-JPA를 사용하기 위해 세팅!
1)application.properties 세팅
2)JPA 실행 코드
// item01Application.java 의 main 함수 아래에 붙여주세요.
@Bean
public CommandLineRunner demo(LectureRepository lectureRepository) {
return (args) -> {
Lecture course = new Lecture("웹개발의 봄", "남병관");
lectureRepository.save(course); //레포지터리에서 상속받아 Lecture의 엔티티, 객체를 생성해서 세이브 메소드 호출(인자값으로) = insert문 (jquery 만들어줌)
lectureRepository.findAll(); //Select문 생성
};
}
-상속 : extends
이미 만들어둔 것을 갖다 쓰겠다고 선언하는 것
class Person {
private String name;
public String getName() { //세터
return this.name;
}
public void setName(String name) { //게터
this.name = name;
}
}
class Tutor extends Person {
private String address;
// Person 클래스를 상속했기 때문에,
// name 멤버변수와 getName() 메소드를 가지고 있습니다.
}
상속 연습!
-상속 연습해보기
@MappedSuperclass // 상속했을 때, 컬럼으로 인식하게 합니다.
@EntityListeners(AuditingEntityListener.class) // 생성/수정 시간을 자동으로 반영하도록 설정
public class Timestamped {
@CreatedDate // 생성일자임을 나타냅니다.
private LocalDateTime createdAt;
@LastModifiedDate // 마지막 수정일자임을 나타냅니다.
private LocalDateTime modifiedAt;
}
-JPA 심화 - C,R 기능 구현함
-Service?
(우리는 DB 담당하는 레포지터리까지 만듬)
- 스프링의 구조는 3가지 영역으로 나눌 수 있습니다.
- Controller : 가장 바깥 부분, 요청/응답을 처리함.
- Service : 중간 부분, 실제 중요한 작동이 많이 일어나는 부분
- Repo : 가장 안쪽 부분, DB와 맞닿아 있음.
- Update 는 Service 부분에 작성합니다.
service 만들고, U,D 기능 구현
-Lombok : 코드 절약하기
Getter,Setter 없애주고 자기들이 만들어줌
디폴트 생성자 자동으로 만들어줌
-DTO(Data Transfer Object)
레이어들 사이의 데이터들을 연결
dto로 서비스를 연결하고 객체의 값을 바꾸고..
업데이트할때 서비스
서비스 콘트롤러 리포지터리 - 레이어마다 데이터를 넘긴다.
서비스단의 (비즈니스 로직) 데이터를 넘겨주는데
이걸 엔티티를 굳이 써서 하지 않고(리포지터레 레이어와 관련있으니) dto를 사용해서 처리하는 것이다
DTO연습
-API : POST/PUT 만들기
...
20번까지
리포지터리쪽은 다 만든것
이번의 엔티티 이름은 메모
테이블 이름 메모
'Today I Learned' 카테고리의 다른 글
211109TIL_스프링 5 (0) | 2021.11.09 |
---|---|
211105TIL_스프링 3 (0) | 2021.11.05 |
211103TIL_스프링 1 (0) | 2021.11.03 |
211029TIL_서버리스(3)-백엔드2 (0) | 2021.11.03 |
211028TIL_서버리스(2) - 백엔드 (0) | 2021.10.29 |