조회순 추천순 정렬

Que Lin·2021년 12월 31일
0
post-thumbnail

앞글의 검색기능과 정말 비슷하게 하면 된다! 오예

jsp - 원래 이렇게 나눌 필요는 없지만 버튼을 따로 주고 싶었다. (다른 방법이 있을 것 같은데 다음에 꼭 수정해봐야지..ㅎㅎ..)

<th>
	<form action="/board/Sort" method="get">
		<input type="hidden" name="sort" value="1">
		<input class="btn btn-link-dark" type="submit" value="조회수">
	</form>
</th>
<th>
	<form action="/board/Sort" method="get">
		<input type="hidden" name="sort" value="2">
		<input class="btn btn-link-dark" type="submit" value="추천수">
	</form>
</th>

controller

@RequestMapping(value="Sort", method=RequestMethod.GET)
	public String Sort(Model model,@RequestParam int sort) {
		
		List<BoardDTO> bList =  bs.sort(sort);
		model.addAttribute("bList", bList);
		return "/board/boardFindAll";	
	}	

service -서비스에서 조건문을 줘야 코드가 확 줄어드는 듯? repository에서 줘도 되나?

@Override
public List<BoardDTO> sort(int sort) {
	if(sort == 1) {
		List<BoardDTO> bList = br.viewSort();
		return bList;		
	}else {
		List<BoardDTO> bList = br.likeSort();
		return bList;
	}
}

repository

public List<BoardDTO> viewSort() {
		return sql.selectList("Board.viewSort");
	}
public List<BoardDTO> likeSort() {
		return sql.selectList("Board.likeSort");
	}

mapper 아! 여기서 검색기능 처럼 했어도 됐나?
코드 줄이기가 어렵구만 역시

<select id="viewSort" resultType="board">
	select * from board_table order by b_hits desc 
</select>

<select id="likeSort" resultType="board">
	select * from board_table order by like_count desc 
</select>
profile
1일 1커밋 1일 1벨로그!

0개의 댓글