본문 바로가기

컴퓨터공학/Spring & Hibernate

Spring> MVC & Hibernate> Delete Button & 번외

링크 넣기

재확인 메시지 창이 뜨게 하고 거절했을 경우 false로 반환한다.

확인했으면 링크로 이동한다. 

링크는 /member/delete로 이동하며

파라미터에는 각 멤버의 id가 들어있다.

 

삭제 기능 넣기

Controller

member/delete 에 요청이 들어오면

파라미터에 있는 memberId값을 theId로 입력하고

이 값을 Servicelayer에 있는 삭제 메소드에 입력한다.

그리고 다시 리스트 페이지를 리다이렉트한다.

Service Layer

 

service layer 인터페이스

입력받은 id 값을 DAO에 전달한다.

DAO

삭제 메소드에서 쿼리를 실행한다.

세션을 불러오고 

세션에서 쿼리를 생성한다.

쿼리 파라미터값을 설정하낟.

쿼리를 실행한다.

 

잘 작동한다. 


번외

 

검색기능 넣기

해야하는 순서는 다음과 같다.

 

html form 만들기

Controller에서 검색 만들기

Service layer 와 DAO 만들기

 

 

검색 html 넣기

 

일단 맨 위에 라이브러리를 설정한다.

그리고 검색 form도 넣는다. 

입력 내용은 theSearchName이라고 이름을 붙인다.

submit 시에 search로 이동한다. 

리스트 페이지가 member/list 인데 여기서 검색창으로 search 로 이동하면

member/search 로 간다. 아까 입력 내용을 theSearchName으로 했는데

이 값은 파라미터에 담겨져서 오게 된다.

이 것을 theSearchName 변수에 입력한다.

서비스레이어에서 검색 메소드에 변수를 입력하고 실행한다.

Model에 이 변수를 추가한다. 이름은 members라고 붙였다.

그리고 리스트를 보여주는 페이지로 이동한다. 

 

Service layer 작성하기

인터페이스 작성

html에서 검색창 값을 파라미터에 넣고

controller에서 파라미터 값을 변수에 넣은 다음

이 변수를 서비스레이어에 전달한다.

서비스레이어는 DAO에 전달한다.

DAO 기능 넣기

세션을 실행한다.

쿼리 변수를 둔다. 

검색 입력값이 없을 경우와 있는 경우가 나뉜다.

 

없는 경우는 검색하지 않았을 때

즉 순정일 때인데 이럴 경우 테이블 값을 가져오는 쿼리이다.

 

있는 경우는 검색값이 있을 때

유저 이름과 닉네임에 검색값이 있는지 확인하는 쿼리이다.

 

마지막으로 쿼리를 실행하고 결과값을 리스트로 반환한다.

이 반환값은 conroller에서 사용한다.

controller는 리스트를 리스트 페이지에 전달한다. 


분류 기능 만들기

분류 상수를 위한 유틸리티 클래스를 만들기

이 클래스는 상수값을 담는 클래스이다. 

변수를 사용하여 상수값을 이용할 수 있다.

 

JSP 파일에서 열 머리에 링크 달기

url을 만들어 준다. 링크가 이동하는 곳

파라미터 이름, 값을 만든다.

파라미터 값은 상수값으로 둔다.

Controller 구성하기

리스트 페이지를 불러올 때 파라미터값을 sort 변수에 둔다. 

 

파라미터값이 없으면 순정 상태이니 기본 상태에서 id 값으로 분류를 할 것이라면 

알맞는 상수값을 service layer에 입력한다.

 

sort 값이 있으면  그대로 service layer에 전달

 

service layer 

DAO 구성

오는 값에 따라서 필드 이름을 정한다.

이 필드 이름을 쿼리에 입력한다.

쿼리를 실행하고 결과값을 리스트로 가져온다.

객체 리스트를 반환한다.