*servlet & jsp*/myBatis

[myBatis] 댓글달기 / 페이징처리

깐부로부터 2022. 2. 13. 15:51

1. jsp에 검색필터 selection 만들어두기

* form 태그 action속성엔 쿼리스트링 사용X

 

 

 

 

 

2.  서블릿에서 사용자로부터 검색 카테고리값과 키워드 입력받아 값 뽑기

 

 

 

3. 사용자로부터 입력받은 검색카테고리와 키워드를 HashMap에 담아서 서비스로 보내기

 

 

 

 

4. 전달받은 HashMap dao로 전달하기

 

 

 

 

 

5. HashMap전달받은 dao에서 쿼리문 실행하고 검색된 항목들의 총갯수 받아오기

 

 

 

6. 마이바티스를 이용하여 동적 sql생성하고 실행하기

검색항목과 사용자가 입력한 키워드로 조회된 게시글의 총 수 가져오기

 

 

 

 

 

7. 사용자가 요청한 검색결과에 맞는 게시글의 총 갯수 구하여 페이징처리처리하는 인스턴스 PageInfo 구해옴

 

 

 

 

 

8. 검색된 항목들로 게시글 ArrayList로 담아오기

 

 

 

 

9. 서비스단 

 

 

 

 

10. 마이바티스의  강력한 기능인 동적 sql 생성하기

 

 

 

 

 

11. dao에서 마이바티스에서 제공하는 페이징처리 객체 RowBounds객체 생성하고 

위에 만들어놓은 쿼리문 날려 결과값 받아 서비스단으로 전달하기

 

 

 

12. 응답페이지 작성하기

검색후에도 카테고리값 키워드값 그대로 남아있다

 

 

 

13. 검색했을 때 페이징바 역시 검색한 필터의 결과의 2페이지가 뜨도록 a태그 href값을 변경해준다.

(jstl의 커스텀액션태그;core library이용)  => 검색필터 페이징처리

원래 페이징바 주소(현재페이지=2페이지)    =>   검색한 결과의 페이징바 주소(검색결과의 2페이지)

 

 

 

 

 

 

 

cf) 보너스 필터

 

1. 필터 클래스 생성

 

 

 

 

 

2. 이렇게 서블릿매핑값 자리에 * : 에스탈리스크 써주면 모든 서블릿이 실행되기전 방금 만든 필터를 거쳐간다

 

 

 

 

3. 모든 서블릿들이 공통적으로 해야하는 코드 기술

 

=> 모든 서블릿들 실행되기전 필터 거쳐서 "UTF-8"로 인코딩 됨

'*servlet & jsp* > myBatis' 카테고리의 다른 글

[myBatis] 게시글 상세보기 / 댓글달기  (0) 2022.02.12
[myBatis] 페이징처리  (0) 2022.02.11
[myBatis] 로그인하기  (0) 2022.02.10