[Spring Boot 게시판] 22일차

김정현·2022년 10월 26일
0

SPRINGBOOT게시판

목록 보기
21/36

1. article 테이블에 좋아요, 싫어요 컬럼 추가, update join을 활용하여 reationPoint 테이블에 있는 정보를 article테이블로 가져오기

    UPDATE article AS A
    INNER JOIN (
        SELECT RP.relTypeCode, RP.relId,
        SUM(IF(RP.point > 0, RP.point, 0)) AS goodReactionPoint,
        SUM(IF(RP.point < 0, RP.point * -1, 0)) AS badReactionPoint
        FROM reactionPoint AS RP
        GROUP BY RP.relTypeCode, RP.relId
   		 ) AS RP_SUM
    ON A.id = RP_SUM.relId
    SET A.goodReactionPoint = RP_SUM.goodReactionPoint,
    A.badReactionPoint = RP_SUM.badReactionPoint;
  • article테이블에 goodReactioPoint(좋아요)와 badReactionPoint(좋아요)의 컬럼을 추가 하였으므로 해당하는 데이터를 업데이트 해야한다.
  • update join을 활용하여 reationPoint 테이블의 정보를 article테이블에 업데이트

2. 좋아요, 싫어요 버튼 기능 구현중

1) needLoginInterceptor인터셉터에 addPathPatterns추가

	registry.addInterceptor(needLoginInterceptor).addPathPatterns("/usr/article/write")
				.addPathPatterns("/usr/article/doWrite").addPathPatterns("/usr/article/modify")
				.addPathPatterns("/usr/article/doModify").addPathPatterns("/usr/article/doDelete")
				.addPathPatterns("/usr/article/doDelete").addPathPatterns("/usr/reactionPoint/doGoodReaction")
				.addPathPatterns("/usr/reactionPoint/doBadReaction");
  • "/usr/reactionPoint/doGoodReaction", "/usr/reactionPoint/doBadReaction" 의 uri요청시 인터셉터가 적용하도록
  • 로그인 했는지 체크하기 위해

2) 좋아요 싫어요 버튼 클릭시 해당 uri로 이동

		<c:if test="${actorCanMakeReaction}">
			<span>&nbsp;</span>
			<a href="/usr/reactionPoint/doGoodReaction" class="btn btn-outline btn-xs">좋아요 👍</a>
			<span>&nbsp;</span>
			<a href="/usr/reactionPoint/doBadReaction" class="btn btn-outline btn-xs">싫어요 👎</a>
		</c:if>
  • 이동경로만 설정

0개의 댓글