CRUD를 사용해 게시판 만들기(4) 글 작성 하기

이전 포스팅들에서는 게시판의 글 리스트 불러오기와

글 상세보기를 했다. 이번포스팅에서는

게시글 작성을 한번 만들어 보자. 먼저 

글쓰기 버튼을 만들어준 다음 버튼에 id값을 설정한다.



다음 게시글리스트 jsp에서 글쓰기 버튼을 눌러주면

글작성 Form 으로 이동할수 있도록 스크립트단을

아래와 같이 만들어준다.



다음 컨트롤러에서 boardInsertForm을 맵핑시켜준다.




이제 글 작성자를 위한 세션을 하나 만들겠다.

게시판에 글을 작성하기위해선 로그인이 필요하다


보통 글 작성을 할때 글 작성자에는 로그인한 아이디값이

들어가지게 된다. 이를 위해 메인 컨트롤러에서

간단하게 세션을 하나 만들어준 후 작성자로 사용하겠다.



위처럼 메인 컨트롤러에서 세션을 만들어준후.



게시판 글 작성 컨트롤러에서 세션을 불러와 사용할수 있도록 하자.



여기까지가 글 작성을 위한 InsertForm을 만든것이다.


글작성을 위한 insertForm.jsp 에서 작성자를 입력하지 않아도

현재 로그인된 세션값의 ID가 자동으로 들어가질수 있도록

아래와같이 수정하자. 그리고 form태그도 만들어주자.





이제 작성한글을 등록과 취소 할수 있도록 만들어보자.


먼저 등록버튼과 취소버튼을 만들어줬다.



다음 스크립트단 안에 아래와같이 만들어주자.


취소버튼을 누르면 게시판 리스트 화면으로 갈수있도록 해주고

등록 버튼을 누르면 insertForm클래스의 pageSubmitFn 프로퍼티를 타서

컨트롤러에 boardInsert.do로 갈수있도록 만들어주자.


다음 컨트롤러에서 boardInsert를 만들어주자.



getBoardNo를 이용해 게시글 번호를 얻어온다음.

boardno에 저장한다. 다음 boardVO 에 setBoardno에 boardno를

넣어준다. 이렇게 함으로 내가 작성한 글 이 4번이 될 차례라면

boardVO에 글번호가 4번의 데이터들이 담기게 되는것이다.


이제 서비스에 insertBoardList를 만들어주고 boardVO에 담긴 값들을

DB에 insert 될수 있도록 해준다.

그리고 글을 작성한다음 해당 번호의 글 상세보기 페이지로 redirect 해준다.


다음 위에 getBoardNo()와 insertBoardno(boardno);를 mvc 해주자.



/*서비스*/


/*임플*/


/*맵퍼*/


마지막으로 쿼리문을 작성해주자.



여기까지가 게시글 작성 이다. 하지만 지금 글 작성시

enter 가 안먹힐것이다 즉, 글을 쓰다가 enter키를 눌러

아랫줄로 이동하여 다음글을 작성후 작성된 글을 보면

글 들이 전부 한줄로 써져있다. 이것을 위해

글 상세보기 jsp에서 작업을 한번 더 해줘야한다


먼저 글 상세보기 jsp 에서 위 태그라이브러리를 하나 써주자.



이제 스크립트단 바로 밑에 위처럼 스크립트릿으로  두 줄만 적어준다.





이제 기존 boardVO.content로 글 내용을 불러오던것을

위처럼 수정해주자. fn은 맨처음 선언해준 태그라이브러리를

사용하는 것이다. crcn은 ASCII 시스템에서 새줄 문자로

라인피드를 하는것이라고 한다. 그냥 알아두자.


다음 포스팅에서 글 상세보기에서

다시 글목록으로 가는버튼과, 수정, 삭제를 만들어보겠다.




댓글

Designed by JB FACTORY