학원끝나고서는 신경못쓰다가 오랜만에 들어와봤더니
방문자가 100명이 넘은거 보고 기뻐서, 이번 목표는 천명으로 해보자!!!
(많은 도움이 됐으면 좋겠다ㅜ)
프로젝트 마지막에는 시간이 너무 촉박한데 할게 많아서,,,
블로그를 틈틈히 한줄 알았는데ㅜ 많이 안했구나ㅎ
다 쓸수 있을지 모르겠지만 해보자!
🔔 22월 01월 19일
✔ 좋아요 높은순으로 3개 보여주기
아직 오류를 찾기 전이어서 게시판 기능에서는
좋아요 숫자를 카운트해서 높은순으로 띄우는게 필요했음
<h4>좋아요 HOT 게시물<small> (*공감수 많은순)</small></h4>
<div>
<c:if test="${empty hotLike }">
<i>공감수 집계중입니다.</i>
</c:if>
<c:if test="${not empty hotLike }">
<div class="hotLikeContainer">
<c:forEach var="hl" items="${hotLike }">
<c:set var="i" value="${i+1}"></c:set>
<div class="hotTrip">
<img style="width: 140px; height: 140px;"
onclick="location.href='tripView.do?t_num=${hl.t_num }&pageNum=${pb.currentPage }'" src="/goat/resources/tripPhoto/${i}.png">
<div style="font-size: 15px;">제목 : ${hl.t_title }</div>
<div style="font-size: 15px;">작성자 : ${hl.m_name }</div>
</div>
</c:forEach>
</div>
</c:if>
</div>
hotLike는 컨트롤러에서 가져온거임
TripController.java
List<Trip> hotLike = ts.hotLike(trip);
model.addAttribute("hotLike", hotLike);
Trip.xml
<select id="hotLike" parameterType="trip" resultType="trip">
select b.*, t.*, m.m_name from
(select a.*, rowNum rn from
(select tl.t_num, count(*) cnt from
trip_like tl, trip tr where tl.t_num=tr.t_num and tr.del !='y' group by tl.t_num order by cnt desc)a)b,
trip t, member m where b.t_num=t.t_num and m.m_num=t.m_num and rn between 1 and 3 order by rn
</select>
오라클 순서로 출력시키는거는 틀이 있어도 너무 어렵다ㅜㅜ
1) tl.t_num(여행이야기 글번호)를 그룹지어서 count 좋아요수를 높은 순으로 출력하는데,
trip_like의 t_num과 trip의 t_num이 같고 tr.del(여행이야기 삭제여부)가 삭제되지 않은거 중에서 그 과정을 a라고 하고
2) 그것을 rowNum 일련번호를 매겨서 b라고 하고
3) b의 모든 컬럼, trip의 모든 컬럼, member의 m_name 컬럼만 출력하는데, rn이 1부터 3까지만
'프로젝트 > G.O.A.T(여행 스케줄러)' 카테고리의 다른 글
이슈 문제 발생 😂 (0) | 2022.02.22 |
---|---|
여행게시판 검색추가, 페이징 문제 수정 (0) | 2022.01.19 |
여행게시판 좋아요(추천수) 추가 (0) | 2022.01.18 |
여행게시판 대댓글 추가 (1) | 2022.01.18 |
여행 게시판 해결! ckEditor4 (0) | 2022.01.16 |