MVC패턴 게시판 #1번
MVC 패턴 #2-1 게시판 만들기
MVC 패턴을 이용하여 게시판 한번 짜보기 * 순서 헷갈릴 경우 좀 더 순서 공부 다시 하기 1. 글목록 list.do 요청 → BFrontController(글목록로직분기) → BListService(DAO에 글목록 생성 요청) → BDa..
tjqud531531.tistory.com
mvc 패턴 게시판 이어서 진행
4단계 index.jsp를 생성하기
list.do 형태의 Controller (서블릿)으로 향할 수 있도록 forward 페이지 작성해주기
5단계 Controller 서블릿 생성해주기
1. @WebServlet("*.do) 매핑 바꿔주는 작업 진행
2. doPost 단에 request.setCharacterEncodint("utf-8")로 바꿔주기
3. actionDo 생성해주기 [자세한 설명은 FrontContloller 참고하기]
ㄴ1) uri, conPath, command 설정해주기
ㄴ2) String viewPage = null; (뷰단 생성하기) / String service = null;(인터페이스로 한번 감싸는 것 )
여기까지 진행한 후 service 인터페이스 만들고 오기
ㄴ5-1단계 Service Interface 만들고 오기
execute 이름을 가진 메소드 , request와 response를 매개변수로 가지며 리턴값은 상관 없으니 void 형태로 생성
*생성완료 후 다시 5단계의 3)으로 넘어가기
ㄴ 3)if문작성해주기 if(command.equals("/list.do")
ㄴ 4)if문 안에 service = new BlistService(); 생성해주기
여기까지 진행한 후 BListService class 만들어주기 (Service 인터페이스를 임플리먼트한)
ㄴ5-2단계 BListService class 만들고 오기
// list.do 또는 list.do?pageNum=2 또는 list.do?pageNum=10 형태가 들어갈 수 있도록 !
-- 1. 페이징 하는 기법들 넣어 주기 #1
--2. dao 불러오고, request객체에 dao에있는 listboard 담아주기
--3. 페이징 하는 기법들 넣어주기 #2
** JSP단에 필요 한 아이 : startPage와 endPage , startPage보다 block사이즈가 큰 아이라는 내용이 나와야 되기 때문에 blcok사이즈도 jsp에 필요. currentPage도 필요, "list"도 필요 , 다음 버튼 누를때도 pageCnt가 필요하기 때문에
jsp단에 필요한 애들 전부 request에 담아주기
--4. 필요한 애들 reqeust객체에 담아주기
*여기까지 하고 5단계 5)로 넘어가주기
ㄴ 5) if문 안에 만들어 놓은 BlistService 불러 오고, forward 시키기
ㄴ5-3단계 list.jsp 만들고 오기(list 부분 게시판 뷰단 만들기)
아래에 list 뿌릴 테이블 생성하기
(들여쓰기 등의 로직을 신경쓰면서 c태그를 이용한 for문 돌리기)
<c:forward>태그를 활용해서 for문 돌리면 됨 -- 테이블 생성 하기
for문의 i가 0일땐 들여쓰기 안하고 1일때부터 들여쓰기
//들여쓰기 한번 하는 경우
ㄴ
//들여쓰기 두번 하는 경우
(스페이스)ㄴ
//들여쓰기세번하면
(스페이스)(스페이스)ㄴ
테이블 밖에 paging 하는 div 생성하기
--1. 이전버튼 생성하기
--2. 내가 클릭한 페이지는 빨간색으로 굵기로
--3. 내가 선택하지 않은 페이지는 그냥 검정색으로
--4. 다음버튼 생성하기
6단계 write_view.do 만들기
ㄴ 만들기 전에 BoardController 가서 else if 문에 write_view.do 해주고, viewPage에 write_view.jsp로 가는거 만들어 주기
ㄴ board/write_view.jsp 생성해주기
ㄴ action 태그에 write.do 로 갈 수 있도록 연결 해주기
7단계 write.do 처리 하러 다시 controller 돌아가서 service = BwriteService() 해주기
8단계 BwriteService 클래스 만들어주기
1) 필요한 파라미터들 먼저 받아와주기 (input 에다가 넣어놓은 파라미터들을 받아온 뒤 dao 에 넣어줘야함)
2) dao 생성하고 request 객체 안에 insertBoard 심어주기
9단계 Controller로 돌아가서 8단계에서 생성해준 아이 호출하기
10단계 BwriteService에 만들어 놓은 writeResult가지고 list.jsp로 돌아가서 table 위에다가 alert 창 뿌려주기
*** 문제는 form태그를 들렸을때만 저장이 되어야 하는데
write.do가 되어있어서 새로고침하면 글을 또 저장함
글쓰기를 할땐 form태그에서 왔냐? 그럼 저장해 ! 이 로직이필요함
form태그(view)단을 갔다 왔는지 안왔는지 확인할 필요가 있기떄문에 controller로 향해서 controller의 맨 위에 변수 선언해주기
다시 /write.do 단으로 가서 안에 if절 하나 추가해주기. write_view가 true일때만 실행하라!
11단계 content_view.do 만들러 가기 Controller 에
요놈 추가해주고 service class 생성해주기
12단계 com.lec.service 에 BContentService 단 만들어주기
컨트롤러로 다시 돌아가서 execute 호출 해주기
viewPage = "board/content_view.jsp" 해주기
요놈 추가해주고 content.jsp단으로 넘어가서 view 단 만들어주기
13단계 board/content_view.jsp 생성하기
-- view 단으로 가서 BcontentService에 만들어준 request 객체 content_view 뿌려주면 됨
- oncllick 할때 넘겨줄 거 다 넘겨줘야함
14단계 Modify
1)controller 에 modify_view.do 만들어주고, 안에 service = new BModifyViewService();
2) com.lec.service / BModifyViewService class 생성해주기
3) controller에서 modify_view.do 완성하기
4)/modify_view.jsp 생성해주기
-- 글 번호를 뿌리긴 할건데 수정은 안하게 할거니 readonly 를 하면됨 (hidden으로 넘겨줘도 됨)
-- pageNum 을 hidden으로 뿌려주기
5)Controller/modify.do 만들기
6) BModifyService 만들기
7)modify.do 완성하기
15단계 Delete
1) delete.do 만들기
2) BDelteService 만들기
-- 컨트롤러 돌아가서 delete.완성하기
-- 리스트 에서 alert 뿌려주기
16단계 답변글 로직
--reply_view.do
--BReplyViewService 만들기
--컨트롤러 완성하기
reply_view.jsp 만들기
**원글정보가 필요한 애들은 hidden 형태로 넘겨주기
- -테이블 만들기
--reply.do만들어주기
--BReplyService 만들어주기
--reply.do완성하기
--list.do 설정하기
'LANGUAGE > JSP' 카테고리의 다른 글
MVC 패턴 #2-1 게시판 만들기 (0) | 2022.06.16 |
---|---|
MVC 패턴 #1 (0) | 2022.06.16 |