board_list.html
글쓰기 버튼을 누르면 onclick으로 board 컨트롤러에 있는 regBoard경로로 찾아가게 된다.
BoardController.java 컨트롤러
BoardVO 객체에 저장된 boardVO를 사용할 수 있도록 매개변수에 담아서 board_write 페이지로 이동하게 된다.
현재 BoardVO에 담겨진 데이터는 없다.
board_writer.html
등록 버튼을 만들어 form태그로 감싸 submit으로 보내주었고, 이전 컨트롤러에서 boardVO를 가져왔기 때문에,
각 input, textarea 과 같은 태그에 값을 넣어주면 boardVO에 담아서 컨트롤러로 넘어갈 수 있게된다.
오른쪽과 같이 비밀글 체크박스에 클릭시 자바스크립트를 이용해 비밀번호가 나타날 수 있도록 하였는데,
toggle을 이용하여 사라지고, 나타나게 만들어주었다.
BoardController.java 컨트롤러
컨트롤러에서 해당 BoardVO boardVO를 받아와 출력해보았다.
위처럼 데이터를 잘 받아가 들어간 것을 볼 수있으며,
이것을 쿼리로 작성하고 Service를 쓰기 위해선 먼저 Mapper부터 작업해주어야한다.
보드매퍼에서 게시글 등록을 해줄 수 있는데, 위의 resultMap 데이터를 적절히 참고할 수 있다.
resultMap은 select절에서 사용하기 위해 미리 만들어 두는 것이 효율적이다.
Service
이후 service 패키지에 들어와 BoardServic 인터페이스에서 void로 BoardVO 객체를 저장한다.
매개변수 및 리턴 타입 결정 방법(우선적으로 실행 시 쿼리를 작성)
매개변수 : 쿼리 실행 시 빈 값을 채울 용도
1. 쿼리에서 채워 줄 값이 없을 경우 : 매개변수 없음
2. 채워줄 값이 하나일 경우
2-1) 채워줄 값이 숫자인 경우 : 매개변수 int형 하나
2-2) 채워줄 값이 문자인 경우 : 매개변수 String형 하나
3. 채워줄 값이 여러개인 경우 : 매개변수는 VO 객체.
리턴타입 : 쿼리 실행 결과를 어떻게 받아올지에 대한 정의
INSERT, UPDATE, DELETE 쿼리 실행 결과는
리턴타입을 int 혹은 void 사용하면됨. int로 받을 땐 return 필요o void는 필요x
SELECT 쿼리 결과의 리턴타입은 크게 두 가지로 나뉨.
조회결과 데이터가 무조건 한줄만 조회 : VO 객체.
조회 결과 데이터가 0줄이상 가변적일 경우 : List<VO> 객체.
끝났으면 BoardServicImpl 클래스로 넘어가 sqlsession를 완료해준다. @어노테이션도 각 상황에 맞는 것을 쓴다.
BoardController.java 컨트롤러
콘솔창
이렇게 까지 하고나면, 게시글 등록이 된다.
하지만 아직 게시글 리스트를 출력해주지 않았으므로 html에서 결과 확인을 할 수가 없다.
글 리스트를 출력 하는 방법은 다음 포스팅에서 알아보자.
'✨ Back-end > Spring-Boot' 카테고리의 다른 글
[Spring] 보드게시판 만들기(5) 게시글 상세보기 (0) | 2023.03.25 |
---|---|
[Spring] 보드게시판 만들기(4) 등록 게시글 리스트 출력 (0) | 2023.03.23 |
[Spring] 보드게시판 만들기(2) 로그인 Session (0) | 2023.03.22 |
[Spring] 보드게시판 만들기(1) 회원 가입 (0) | 2023.03.22 |
[Spring] 보드게시판 만들기(0) - 초기 세팅과 Fragment (0) | 2023.03.21 |
댓글