ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [게시판 만들기 (2)] 게시글 작성_작성 페이지 이동하기
    Spring Boot 2024. 1. 12. 14:40

     

    이제 게시글 작성 페이지를 만들어준다.

    먼저 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 로 잘 이동되었다.

Designed by Tistory.