Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- JSON
- s
- R
- insertion sort
- 알기쉬운 알고리즘
- 메모리구조
- datastructure
- 이것이 자바다
- C 언어 코딩 도장
- 혼자 공부하는 C언어
- coding test
- Serialization
- Selection Sorting
- Stack
- Algorithm
- buffer
- 윤성우의 열혈 자료구조
- list 컬렉션
- Graph
- 이스케이프 문자
- stream
- 윤성우 열혈자료구조
- C programming
Archives
- Today
- Total
Engineering Note
[스프링 부트 입문 07] 폼 데이터 주고 받기 본문
본 내용은 홈팍 스프링 부트 강좌를 참고하였습니다.
https://www.youtube.com/watch?v=rzjudEZ8bt0&list=PLyebPLlVYXCiYdYaWRKgCqvnCFrLEANXt&index=8
view 페이지의 Form 태그를 통해 Form data를 서버로 전달 받아 처리해줄 controller

package com.example.boardproject.controller;
import com.example.boardproject.dto.ArticleForm;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@Controller
public class ArticleController {
@GetMapping("/articles/new")
public String newArticleForm(){
return "articles/new";
}
@PostMapping("articles/create")
public String createArticle(ArticleForm form){
System.out.println(form.toString());
return "redirect:/";
}
}
view page

form 태그에서 action은 버튼을 누르면 처리해줄 controller url을 가리키고, method는 HTTP method를 가리킨다. 여기서는 post로 처리해주겠다고 적어준다.
그리고 Controller 내부 method에서 클라이언트가 보낸 데이터를 받기 위해서는 객체로 받아야 하는데 이를 DTO(Data Transfer Object라고 한다.
DTO의 field는 view page에서 데이터가 적히는 input과 textarea 태그의 name 속성들의 이름과 같아야 한다. 이렇게 해주면 각각의 name에 해당하는 데이터가 DTO field에 저장된다. 여기서는 input태그의 name이 title이기 때문에 ArticleForm 객체의 title field에 저장된다. textarea의 name은 content이기 때문에 ArticleForm의 title에 저장된다.

'Server > Spring' 카테고리의 다른 글
| [스프링 부트 입문 09]DB 테이블과 SQL (0) | 2022.07.08 |
|---|---|
| [스프링부트 입문 08] 데이터 생성하기 with JPA (0) | 2022.07.08 |
| [스프링 부트 입문 04] 뷰 템플릿과 MVC 패턴 (0) | 2022.07.08 |
| [Spring] Spring boot 자동 재실행 by devtools (0) | 2022.07.08 |
| [Error] 8080 포트 이미 실행중, 8080 포트 죽이기 (0) | 2022.07.06 |
Comments