코딩 자율학습단 5기 - 4일차 Entity 및 DB 저장하기
2023. 11. 26. 23:44ㆍ공부/BackEnd - Spring Boot
저번 시간에 사용한 DTO 를 활용하여 이번에는 실제 DB 에 저장하는 부분을 실습해보았다.
책에 나온 Article 이 아닌 과제로 있던 Members 부분으로 진행하였다.
- view template 제작 (기존 Article template 참고하여 생성)
Member View Template - 데이터를 입력받고 저장할 MemberController 만들기
입력받을 form 을 연결해주는 members 와 저장하는 post mapping 을 생성. form 의 action과 postmapping 은 일치해야한다는 점 주의!!Member Controller code - Data 를 전달 받을 DTO 생성
이 때 변수 명은 반드시 view form 에서 지정한 name 과 일치하도록 주의!! 해당 form 을 생성할 때 호출 되는 생성자와, entity 로 전달해주기 위한 toEntity 함수 또한 같이 선언해 주었다.MemberForm code - 그리고 DTO 로부터 데이터를 전달 받아 DB 에 전달해 줄 Entity 생성
@Entity 선언은 필수!!Member Entity code - 그 후 실제 db 에 전달해주는 역할을 하는 repository 를 생성한다.
다른 것 없이 그냥 Repository 생성 후, CrudRepository 를 상속받아 주면 된다. 내부에는 save, find 등과 같이 db 를
조회하기 위한 함수들을 지원해주는 것 같다. 책에서도 우선 이 정도까지만 알면 된다고 하여서, 나중에 더 자세하게 알 기회가 있지 않을까 싶다. - 그 후 저장하고 다시 서버 재실행하여 view template 확인
Members view - 이번에 메인으로 사용하는 H2 database 확인(localhost:8080/h2-console 로 접속)
여기서는 생략하였지만, application-properties 에서 spring.h2.console.enabled 옵션을 반드시 true 로 해줘야 사용 가능한 점 주의!! 그리고 하기 url 은 책에서 나온 대로 터미널에서 ctrl + f 로 jdbc:h2 로 찾아보면 jdbc:h2:~~~ 하는 url
주소가 있다. 여기가 내가 서버를 켤 때 사용하는 주소이고, 이는 메모리에 얹어서 사용하기 때문에 휘발성인 점 주의!H2 database - 이제 members 를 추가!
- 그 후 서버 log 및 db 를 확인해보면 정상적으로 생긴 부분을 확인할 수 있었다!!!
서버 terminal log H2 Database select 결과 - 이렇게 실제 DTO, Entitiy, CrudRepository 를 이용해서 실제 DB 에 저장까지 해보았다. 뭔가 진짜 backend 를 하는 것 같은 기분이 든다. 실제 진도는 더 나갔는데, 필자의 현생으로 인해 나눠서 적으려고 한다... 마스터까지 화이팅!!
'공부 > BackEnd - Spring Boot' 카테고리의 다른 글
코딩 자율학습단 5기 - 6일차 게시글 읽기(Read) (0) | 2023.11.29 |
---|---|
코딩 자율학습단 5기 - 5일차 lombok으로 코드 refactoring 하기. (0) | 2023.11.27 |
코딩 자율학습단 5기 - 3일차 DTO 사용해보기 (1) | 2023.11.24 |
코딩 자율 학습단 5기 - 2일차 (1) | 2023.11.24 |
코딩 자율학습단 5기 - 1일차 환경 셋업 (0) | 2023.11.20 |