본문 바로가기

연관관계2

YSit [4] - 엔티티 개발하기 도메인을 설계했던 내용을 토대로 엔티티 개발을 시작했다. 도메인 패키지를 생성하고 먼저 User 클래스를 생성했다. JPA에게 엔티티임을 알려주기 위해 Entity 어노테이션을 넣고 DB에는 'user'라는 예약어가 있어서 혹시 모를 상황에 대비해 @Table 어노테이션으로 User가 아닌 Users로 테이블을 생성했다. 보통 getter와 setter를 둘다 사용하는 것 같던데 강의에서는 setter 사용을 삼가라는 내용이 있었다. 이유는 이후에 다른 사람이 코드를 보면 어떤 지점에서 데이터 변경이 일어나는지 쉽게 알 수가 없어서 그렇다는 내용이었는데 생각해보니 맞는 말 같아서 이후에 setter 사용을 하지 않기 위해 아예 setter 어노테이션을 사용하지 않고 getter 어노테이션만 세팅해주었다... 2022. 12. 24.
YSit [2] - 도메인 설계하기 기획을 마쳤으니 나는 바로 도메인을 설계했다. 주요 기능을 나눠보면 게시판, 방과후 신청, 기자재 대여, 상담 신청, 유저 기능이 있다. 일단 유저기능은 그대로 테이블로 만들어서 아이디, 패스워드, 이름 등으로 만들었다. 그런데 선생님들도 아이디가 있어야하기 때문에 관리자 권한을 어떻게 할까 고민하다가 선생님과 학생 계정, 관리자 계정 둘로 나누기로 결정했다. 그렇게 되면 관리자 권한이 필요한 선생님들께서 다소 불편해 하실 수 있으나, 모든 선생님께 관리자 권한을 모두 드리는 것보단 나은 것 같아서 테이블을 둘로 나누기로 했다. 게시판 기능은 전에 만들었던 기능이기도 해서 빠르게 설계할 수 있었다. 게시판(카테고리)과 게시물로 나누고, 게시판 기능에는 댓글 기능도 있어야하기 때문에 댓글 테이블도 만들기로.. 2022. 12. 23.