본문 바로가기

프로젝트/자리 있어요?31

[Refactoring] 작성 중이었던 추후 손봐야 할 목록 작성 중이었던 추후 손봐야 할 목록 DB query 문 수행에 대한 transaction 처리 Session에 로그인 한 email 정보가 소실되었을 때, Filter? Session에서 관리하는 보유 매장의 list DB에 굳이 필요하지 않은 column 삭제(reviewExist) DB에 중복되는 data를 계속해서 가져가는 방식의 설계 부수기 (menu table의 storeNum 같은 것들) DB의 정보를 추가, 수정, 삭제 과정에서 필요한 email 검증 과정을 AOP나 Filter로? (getStoreData) 로그인 redirection 이제까지 작업하면서 조금씩 작성한 추후 손봐야 할 목록이다. 이 중에서 4번은 결국 column을 지우지 않는 것으로 결정했고, 5번의 경우는 DB에서 해당.. 2022. 8. 27.
[Refactoring] 22.08.27. 매장 리뷰 관리 페이지 매장 리뷰 관리 페이지 구성 1. 리뷰 확인하기 매장을 방문해 주문한 유저의 리뷰를 확인할 수 있다. 매장 관리자가 유저의 리뷰에 댓글을 남길 수 있다. 남긴 댓글은 수정 및 취소가 가능하다. 코드 뜯어보기 StoreController.java storeReview - getReviewList 매장 리뷰 관리 페이지로의 이동 요청을 처리하는 controller의 method이다. ReviewService의 getReviewList는 지난 게시글에서 다룬 service method이다. 해당 게시글에서 getReviewList를 Map 으로 return 하고 있어서 화면이 제대로 출력되지 않고 있다. 우선 StoreDto로 number data를 받고 있으니, 굳이 필요 없는 HttpServletReque.. 2022. 8. 27.
[OracleDB] DB에서 잘못 삭제한 data 복구 DB에서 잘못 삭제한 data 복구 코드를 수정하고 테스트하는 과정에서 DB의 data가 잘못 변경된 내용들을 eclipse에서 임의로 수정하여 복구하다가 잘못 클릭하는 바람에 매장을 update하는 것이 아니라 delete 해버렸다. 값이야 임의로 넣어 다시 만들어주면 되는 거였지만, 이런 내용을 원상복구하는 방법이 있을 것이라고 생각해서 검색해보았다. insert into store select * from store as of timestamp(systimestamp-interval '10' minute) where num=1 Oracle에는 9i 이후에 timestamp 라는 친구를 지원한다고 한다. 물론 일정 시간 지난 후에는 복구할 수 없지만, 당장 몇 분 전의 data가 지워지는 것은 아닌 .. 2022. 8. 26.
[Refactoring] 22.08.26. 마이 페이지 (리뷰 작성, 수정, 삭제, 확인) 마이 페이지 (리뷰 작성, 리뷰 보기) 구성 1. 주문 내역 확인 해당 계정으로 주문한 내역을 확인할 수 있다. 주문한 내역을 취소할 수 있다. 2. 리뷰 작성 해당 주문에 대한 리뷰를 작성할 수 있다. 이미지와 글을 동시에 작성할 수 있다. 리뷰를 작성했다면, 해당 리뷰에서 사용자가 준 별점을 확인할 수 있다. 리뷰를 작성했다면, 해당 버튼은 수정 버튼으로 바뀐다. 3. 리뷰 확인 해당 매장에 대한 리뷰 정보를 한 번에 확인할 수 있다. 코드 뜯어보기 MenuController.java addReview - addReview 작성한 리뷰 정보 저장 요청 처리를 위한 controller의 method이다. Http 의존성을 제거하는 방향으로 logic을 살펴보려고 한다. 우선 HttpServletRequ.. 2022. 8. 26.
[Refactoring, OracleDB] 22.08.22. DB table에서 storeName column 지우기 DB table에서 storeName column 지우기 현재 DB table에는 매장 정보를 가진 table 이외에도, 주문 정보와 리뷰 정보를 가진 table에도 column으로 존재하고 있다. 만약 이렇게 된다면, 매장 정보 중 매장의 이름을 변경했을 때 나머지 table에서도 변경해줘야하는 문제가 발생한다. 예를 들어 매장의 이름이 A일 때 주문하고 리뷰를 작성했는데 이를 나중에 B로 변경한다면, 마이 페이지에서는 이름이 A인 상태로 출력될 것이다. 따라서 해당 column을 지워주고, front에 매장의 이름을 함께 넘기는 것을 다른 방식으로 data를 넣어주려고 한다. 이미 매장 메뉴 table에서는 storeName column을 지워주었으나, 언급만 하고 따로 기록하지 않아서 겸사겸사 기록.. 2022. 8. 23.
[Refactoring] 22.08.22. 주문 정보 테이블에 주문에 대한 리뷰의 유무 정보는 필요한가? (feat. reviewExist) 주문 정보 테이블에 주문에 대한 리뷰의 유무 정보는 필요한가? DB에 주문 정보를 담는 table에는 해당 주문에 대한 리뷰의 존재 유무를 담을 수 있는 column이 만들어져 있다. 하지만 해당 column이 굳이 존재해야하는가에 대한 의문이 들었다. 이는 얼마 전의 작업에서도 마찬가지였다. 따라서 이에 대한 고찰을 한 뒤, 수정이 필요하다면 어떤 식으로 수정할 것인지를 정리해보고자 한다. 코드 뜯어보기 OrderServiceImple.java 위 내용은 주문 정보를 가져오는 OrderService의 getList method이다. Paging 처리를 위한 작업이 함께 되어있어서 조금 정신없지만 기존 logic부터 살펴보면 다음과 같다. OrderDto에 접속한 계정의 email 정보를 담아 계정으로 .. 2022. 8. 23.