@RequestMapping(value = folderPath + "menuCodeOverlap.do")
public ModelAndView menuCodeOverlap(@ModelAttribute("searchVO") MnVO searchVO, ModelMap model, HttpServletRequest request) throws Exception {
int overCnt = cmmnService.selectCount(searchVO, PROGRAM_ID + ".overlapSelectCount") ;
model.addAttribute("overCnt", overCnt);
return new ModelAndView(ajaxView,model);
}
model에 있는 객체 값을 json으로 바꿔서 Ajax로 보내줄 때
ajaxView를 사용하면서 필수로 사용.
(만약 model로 하면 오류가 뜸.)
평소에는 어떤 것을 쓰든 상관은 없음
D. 자식 / 자손선택자
-> $("#list1 li").css("color","green");
-> $("#list1 > li").css("color","green");
CRUD가 기본이기 때문에 가장 먼저 파악할것,
나중에 테스트로 댓글 게시판이 나올 수도 있기때문에 이걸 어떻게 만들지 기존 SAMPLE소스를 이용해서 어떻게 구현할 수 있는지 응용할 방법 알아보기
---- READ ----
list.do 페이지 접속
SampleController list 메서드
.mLayout:tiles로 지정해둔 레이아웃 사용
folderPath + list.jsp 연결 파일 경로로 이동
list.jsp
2-1. searchVO 표시
페이지 접속되면 $(document).ready(function(){
fncPageBoard('addList','addList.do',1);
});
실행되고 fncPageBoard 호출
/publish/ma/js/board.js
3-1. fncPageBoard 메서드 실행
3-2. 파라미터 값 ('addList','addList.do','1')를 getBoard의 배열로 넣기
3-3. switch문에서 gubun = addList, url = addList.do, idx = 1 가지고
3-4. switch (gubun)의 case 'addList'이동
3-5. list.jsp의 <input type="hidden" id="pageIndex" name="pageIndex"/>
에 idx값 넣기
3-6. Ajax 목록호출 후 list의 .tbl클래스 목록에 html안의 내용 변경
$.ajax({
method: "POST",
url: url,
data : $("#defaultFrm").serialize(),
dataType: "html",
success: function(data) {
$(".tbl").html(data);
fncLodingEnd();
}
});
sampleController addList.do로 진입
4-1. Cache에 담긴 페이징 정보 취득및 없을 시 생성
4-2. int totCnt = cmmnService.selectCount(searchVO, PROGRAM_ID); // 쿼리에서 전체 게시물 건수를 가져와서 페이징 처리
4-3. model에 paginationInf이란 name으로 화면에 전달
4-4. return folderPath + "addList";
addList.jsp에서 게시글 클릭
<td>${result.name }</td>
onclick: 버튼을 사용했을 때 페이지 링크를 연결 시켜야 할때 사용
board.js의 fncPageBoard 호출하고 실행
fncPageBoard('view','view.do','130','seq') 파라미터를 가지고
fncPageBoard 메서드 진입해서
gubun = view,
url = view.do,
seqVal = 130,
seqNm = seq
switch (gubun) 진입
case 'view' 실행
........향 후 계속 추가