๋กฌ๋ณต์ ํ์ฉํด ๋์ด์ง ์ฝ๋๋ฅผ ๊ฐ์ํํ๊ณ printIn() ๋ฌธ์ ๋ก๊น ์ผ๋ก ๋ณํํ๋ค.
๐ค ๋กฌ๋ณต ์ถ๊ฐํ๊ธฐ
- ๋กฌ๋ณต : ์ฝ๋๋ฅผ ๊ฐ์ํํด์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์ฌ๋ฌ ํ์ ์ฝ๋๊ฐ ๋ฐ๋ณต๋๋ ๊ฒ์ ์ต์ํํ ์ ์๊ณ println()๋ฌธ์ ๋ก๊น ๊ธฐ๋ฅ์ ๋์ฒด ํ ์ ์๋ค.
- ๋ก๊น : ํ๋ก๊ทธ๋จ์ ์ํ ๊ณผ์ ์ ๊ธฐ๋ก์ผ๋ก ๋จ๊ธฐ๋ ๊ฒ.
build.gradle ํ์ผ์ ๋กฌ๋ณต์ ์ถ๊ฐํ๋ค.
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
dependencies {} ๋ธ๋ก ์์๋ ํ๋ก์ ํธ๋ฅผ ์์ฑํ ๋ ์ถ๊ฐํ ๋๊ตฌ๋ค์ด ์ ํ ์๋ค.
์น ์๋น์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํ web mustache,jpa,h2database๋ฅผ ํ์ธํ ์ ์๋ค.
๋กฌ๋ณต๋ ์ฌ๊ธฐ์ ์ถ๊ฐํ๋ค.
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-mustache'
implementation 'org.springframework.boot:spring-boot-starter-web'
runtimeOnly 'com.h2database:h2'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
}
ํธ์ง๊ธฐ์ ์๋ ์ฝ๋ผ๋ฆฌ ๋ชจ์ ์๋ก๊ณ ์นจ์ ํด๋ฆญํ๋ค.
์ด๊ฒ์ ์ถ๊ฐํ ์ฝ๋๋ฅผ ๊ฐ์งํด ๋กฌ๋ณต ๊ด๋ จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ธํฐ๋ท์์ ์๋ ๋ค์ด๋ก๋ํ๋ค.
๐ค DTO ๋ฆฌํฉํฐ๋งํ๊ธฐ
- ๋ฆฌํฉํฐ๋ง : ์ฝ๋์ ๊ธฐ๋ฅ์๋ ๋ณํจ์ด ์์ด ์ฝ๋์ ๊ตฌ์กฐ ๋๋ ์ฑ๋ฅ์ ๊ฐ์ ํ๋ ์์ .๋ฆฌํฉํฐ๋งํ๋ฉด ์ฝ๋์ ๊ฐ๋ ์ฑ์ด ์ข์์ง๊ณ ๊ธธ์ด๋ ์งง์์ ธ์ ๊ฐ๋ฐ ์๊ฐ์ ๋จ์ถํ ์ ์๋ค.
ArticleForm
๋ฆฌํฉํฐ๋ง ์
package com.example.firstproject.dto;
import com.example.firstproject.entity.Article;
public class AritcleForm {
private String title; //์ ๋ชฉ์ ๋ฐ์ ํ๋.
private String content; //๋ด์ฉ์ ๋ฐ์ ํ๋.
//์ ์ก๋ฐ์ ์ ๋ชฉ๊ณผ ๋ด์ฉ์ ํ๋์ ์ ์ฅํ๋ ์์ฑ์ ์ถ๊ฐ.
public AritcleForm(String title, String content) {
this.title = title;
this.content = content;
}
//๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์๋์ง ํ์ธํ toString() ๋ฉ์๋ ์ถ๊ฐ.
@Override
public String toString() {
return "AritcleForm{" +
"title='" + title + '\'' +
", content='" + content + '\'' +
'}';
}
//ํผ ๋ฐ์ดํฐ๋ฅผ ๋ด์ DTO ๊ฐ์ฒด๋ฅผ ์ํฐํฐ๋ก ๋ณํ.
public Article toEntity() {
return new Article(null,title,content);
}
}
๋ฆฌํฉํฐ๋ง ํ
@AllArgsConstructor
@ToString
public class AritcleForm {
private String title; //์ ๋ชฉ์ ๋ฐ์ ํ๋.
private String content; //๋ด์ฉ์ ๋ฐ์ ํ๋.
//ํผ ๋ฐ์ดํฐ๋ฅผ ๋ด์ DTO ๊ฐ์ฒด๋ฅผ ์ํฐํฐ๋ก ๋ณํ.
public Article toEntity() {
return new Article(null,title,content);
}
}
- <๋์> ์ฝ๋ฉ ์์จํ์ต ์คํ๋ง ๋ถํธ 3 ์๋ฐ ๋ฐฑ์๋ ๊ฐ๋ฐ ์ ๋ฌธ
https://product.kyobobook.co.kr/detail/S000202971420
์ฝ๋ฉ ์์จํ์ต ์คํ๋ง ๋ถํธ 3 ์๋ฐ ๋ฐฑ์๋ ๊ฐ๋ฐ ์ ๋ฌธ | ํํ - ๊ต๋ณด๋ฌธ๊ณ
์ฝ๋ฉ ์์จํ์ต ์คํ๋ง ๋ถํธ 3 ์๋ฐ ๋ฐฑ์๋ ๊ฐ๋ฐ ์ ๋ฌธ |
product.kyobobook.co.kr