지난주에 이어서 조별과제 3주차, 코드짜기 2주차.
<src>
/beans
- Reply.java
- Review.java
/controller
- ProdController (전체, 단일 조회기능만)
- ReplyController
- ReviewController
/dao
- ProductDao (전체, 단일 조회기능만)
- ReplyDao
- ReviewDao
<WebContent>
/includes
- footerFar.jsp
- headerFar.jsp
/js
- prodList.js
- reviewList.js
- productDetail.jsp
- productList.jsp
- homeFar.jsp
- payment.jsp (장바구니에서 넘어가는 결제페이지)
- reviewDetail.jsp
- reviewFar.jsp
페이지네이션 공부 필요.
자잘한 작업 외 크게 진도를 못나감.
jsp페이지마다 css가 다른 경우가 있는데 이럴때 header를 하나의 파일로 링크시키면 각각 따로적용시킬수 없는점 어떻게 해결하는지
=>(22일) header태그에 직접적으로 반복될 헤더만 따로 파일을 만들어 링크시키거나, 혹은 간단한 css의 경우 body태그 내부에 작성해도 상관은 없음.
https://datatables.net/
datatables 사이트
리뷰페이지 datatables적용, 상품리스트페이지 datatables적용 후 css다듬기
~ 오늘의 참고사이트 ~
https://startbootstrap.com/template/shop-homepage 상품리스트페이지에 참고한 부트스트랩 템플릿
https://carina16.tistory.com/143 수량+-버튼
https://chobopark.tistory.com/6 위와 동일
https://okky.kr/article/282819 페이지네이션 기본개념
할일의 1, 2번 완료. 3번은 추후 필요할것같으면 추가.
상품상세 페이지에서 '리뷰보기'버튼을 눌렀을 때 넘어가는 페이지 변경.
할일에 써둔 4가지 모두 완료.
review테이블 변경하면서 수정한 파일:
>sql수정:
DROP TABLE IF EXISTS review;
CREATE TABLE review(
reviewID INT NOT NULL auto_increment,
userID VARCHAR(20) default '' NOT NULL,
reviewDate datetime,
reviewTitle varchar(50),
reviewContent varchar(2048),
prodID INT,
farmID VARCHAR(20),
primary key(reviewID),
foreign key(prodID) references product(prodID) on update cascade on delete cascade,
foreign key(farmID) references farmer(farmID) on update cascade on delete cascade
);
안드로이드 수업 시작
상품의 이미지를 가져오는 경로를 링크주소가 아닌 내부파일경로로 수정.
<img class="ProdImg" src="<%= request.getContextPath() %>/assets/img/${products.prodImg}.jpg" alt="상품사진">
MyShop > 관리자버전(github에서 받은 지혜님 파일)
UglyShop > 전부터 계속 작업한 개인파일
UglyShop2 > github으로 공유받은 2월24일 통합 1차 (로그인/회원가입파트+농민파트)
리뷰보기 수정하면서 바꾼파일
상품이미지 경로 수정하면서 바꾼 파일
리뷰페이지 ajax로 변경하기(천천히 해볼예정...)
리뷰덧글달기부분 오류 잡기
농민이 고객리뷰에 덧글을 달때 조건
1) 농민으로 로그인이 된 상태이며
2) 자신이 판매한 상품에 대한 리뷰만 대상
3) 덧글은 최대 하나만 작성할 수 있으므로 해당 리뷰에 대한 덧글이 없는 상태
위의 세 가지 조건을 모두 만족해야하지만 현 상태로는
1) 로그인을 하지 않음
2) 리뷰가 없는 상품의 리뷰 페이지에 접근
두 가지의 조건이 만족되면 덧글달기창이 사용자에게 노출됨.
이 부분을 이번주에 해결하지 못했으니 어떻게 처리할지 생각해볼것.
=>(27일) 지금은 리뷰를 하나 출력할때 review테이블에서 reviewID값을 가지고 찾아와서 출력하고 해당 reviewID에 대한 replyID값이 있으면 출력, 없으면 출력하지 않도록 작성해뒀는데
아무래도 리뷰를 찾아올땐 값이 없을때에 대한 제약조건이 없어서 문제인 것 같음. 코드확인하면서 수정해보자.