[OLD] 기존 글 저장

[프로젝트 개발] 1. 책 입력화면 만들기

한민기 2022. 6. 4. 13:43
반응형

1. 책 입력 화면 접속

책 정보를 입력하기 위한 화면을 만든다. 

브라우저에서 localhost:8080/create 로 접속하면 책 정보를 입력할 수 있는 화면을 호출한다.

 

2. 책 컨트롤러 클래스 생성

브라우저를 비롯한 클라이언트의 요청을 받아서 응답하는 컨트롤러 클래스를 만든다.

 

- src/main/java => sample.spring.exa 패키지 우클릭 후 New => class 를 선택하면 된다.

# 여기서 sample.spring.exa 패키지가 없을 경우 없는 위치에서 New => Package를 선택하여 패키지를 생성하면 된다.

 

3. 컨트롤러의 이름을 BookController로 만들고 Finish를 누른다.

 

- 컨트롤러를 생성 했다면 아래와 같은 코드를 가진 클래스가 생성된다.

package sample.spring.exa;

public class BookController { 

}

 

4. 컨트롤러의 어노테이션을 설정한다.

import org.springframework.stereotype.Controller;

@Controller
public class BookController {

 

5. 컨트롤러 메소드 작성

src//main/java/sample/spring/exa/BookController.java

@RequestMapping(value="/create", method = RequestMethod.GET)
public ModeAndView create() {
	return new ModelAndView("book/create");
}

create 메소드는 브라우저에서 /create 주소가 GET 방식으로 입력되었을 때 book/create 경로의 뷰를 보여준다.

 

6. 책 정보 입력 화면 뷰 생성

책 생성 컨트롤러에서 book/create 경로로 반환했기 때문에 실제 화면을 담당하는 뷰 코드의 경로는 src/main/webapp/WEB-INF/views/book/create.jsp 이다.

따라서 해당 경로로 이동하여 jsp 파일을 만들어준다.

 

 

7. create.jsp 파일 코드 내용

<%@ page pageEncoding="UTF-8" contentType="text/html;charset=utf-8"%>
<html>
 <head>
  <title>책 생성하기</title>
 </head>
 <body>
  <h1>책 생성하기</h1>
  <form method="POST">
   <p>제목 : <input type="text" name="title" /></p>
   <p>카테고리 : <input type="text" name="category" /></p>
   <p>가격 : <input type="text" name="price" /></p>
   <p><input type="submit" value="저장" />
  </form>
 </body>
</html>

 

 

8. 서버를 재시작 하고 localhost:8080/create 로 접속한다.

반응형