framework를 사용하여 username이란 변수로 생성자를 만든후 addAttribute로 값을 받아 브라우저에 출력하는 과정
@GetMapping 기본 코드
@GetMapping("/hi")
public String Hello(Model model){
model.addAttribute("username" , "주쿤이");
return "greetings"; //templates//greetings.mustache 인 브라우저로 전송
}
중복되는 header 와 footer부분을 브라우저 파일을 통해 저장해서 {{패키지명/파일명}}으로 불러올수 있다.
{{>layouts/header}}
<div class="bg-dark text-white p-5"> //본문 내용
<h1>또보자 {{nickname}}</h1>
</div>
{{>layouts/footer}}
폼데이터 전송하기
<form class="container" action="/articles/create" method="post">
폼태그 안에 action(위치) 보내는 방식인 post를 넣어 데이터를 전송한다
폼데이터 받기
@PostMapping("/articles/create")
public String createArticle() {
return "";
}
}
PostMapping을 통해 내용이 저장되는 위치의 값을 받는다.
던져진 form데이터는 PostMapping의 파라미터로 받아 dto패키지에 같은 이름인 파라미터 안에 생성자로 매개변수로 전달되게 된다.
스프링 패키지를 만들때 다운받았던 jap툴은 서버와 데이터베이스 간의 언어 전달을 원할하게 할 뿐만 아니라 기능적인 요소들도 제공한다 Database는 sql로 이루어져있다.
//1.Dto를 변환! Entity!
Article article = form.toEntity();
toEntity()에게 값이 되는 Article이라는 객체를 만들어줘야한다.
@Entity // DB가 해당 객체를 인식 가능!
public class Article {
@Id //대표값을 지정! like a 주민등록번호
@GeneratedValue //1,2,3,...자동 생성 어노테이션
//어노테이션이란? 메타 데이터의 일종!
//메타 데이터란? 일반적으로 데이터에 관환 구조화된 데이터
private Long id; //Entity에는 대표값을 하나 만들어줘야한다