이제 게시글 작성 페이지를 만들어준다.
먼저 HomeController를 만든다.
[ HomeController ]
package test.SpringBootBoard.board.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class HomeController {
@GetMapping("/")
public String index(){
return "index";
}
}
templates 폴더에 index.html 파일도 만든다.
[ index.html ]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<button onclick="saveReq()">글작성</button>
<a href="/board/save">글작성(링크)</a>
<button onclick="listReq()">글목록</button>
<button onclick="pagingReq()">페이징목록</button>
</body>
<script>
// function saveReq() {
//
// }
const saveReq = () => {
location.href = "/board/save";
}
const listReq = () => {
location.href = "/board/";
}
const pagingReq = () => {
location.href = "/board/paging";
}
</script>
</html>
http://localhost:8092/로 이동하면 요런 페이지가 나온다.
controller 폴더에 BoardController 파일도 만들어준다.
이건 메인 화면에서 버튼을 누르면 글쓰기 화면으로 이동하는 saveForm 메서드.
@RequestMapping("/board")
이렇게 미리 위에 적어놓으면
@GetMapping할 때 ("/board/save") 이렇게 길게 쓸 필요 없어진다.
[ BoardController ]
package test.SpringBootBoard.board.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/board")
public class BoardController {
@GetMapping("/save")
public String saveForm(){
return "save";
}
}
다시 templates도 생성.
[ save.html ]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>save</title>
</head>
<body>
<!-- action속성: 목적지(서버주소), method속성: http request method(get, post) -->
<form action="/board/save" method="post" enctype="multipart/form-data">
writer: <input type="text" name="boardWriter"> <br>
pass: <input type="text" name="boardPass"> <br>
title: <input type="text" name="boardTitle"> <br>
contents: <textarea name="boardContents" cols="30" rows="10"></textarea> <br>
file: <input type="file" name="boardFile"> <br>
<input type="submit" value="글작성">
</form>
</body>
</html>
다시 서버를 돌려서 메인페이지의 글 작성 버튼을 누른다.
http://localhost:8092/board/save 로 잘 이동되었다.
'Spring Boot' 카테고리의 다른 글
[게시판 만들기 (4)] 게시글 목록 (0) | 2024.01.14 |
---|---|
[게시판 만들기 (3)] 게시글 작성_게시글 작성 완료 (0) | 2024.01.13 |
[게시판 만들기 (1)] SpringBoot + jpa + mysql 개발 환경 설정 (0) | 2024.01.12 |
[스프링 입문] (5) 회원 관리 예제 - 웹 MVC 개발 (0) | 2024.01.10 |
[스프링 입문] (4) 스프링 빈과 의존관계 (0) | 2024.01.10 |