ํ๋ก์ ํธ๋ฅผ ํ๋ค๊ฐ controller์์ reviewCheck ๋ผ๋ ๊ฐ์ Y๋ก ๋ณ๊ฒฝ์์ผ์ผํ๋ ์ฝ๋๋ฅผ ๋ณด๋ค๊ฐ ๋ ์๋ฌธ์ด๋ค.
//Controller
//๋ฆฌ๋ทฐ ๋ฑ๋ก ์ฌ๋ถ ์ฒดํฌ
service.regReviewCheck(reviewDTO);
//ServiceImpl
//๋ฆฌ๋ทฐ ๋ฑ๋ก ์ฌ๋ถ ์ฒดํฌ
@Override
public void regReviewCheck(ReviewDTO reviewDTO) {
Optional<RegisterEntity> registerEntity = registerRepository.findByUseridAndClassCode(reviewDTO.getUserid(), reviewDTO.getClassCode());
RegisterEntity register = registerEntity.get();
register.setReviewCheck("Y");
registerRepository.save(register);
}
์ด๋ ๊ฒ service์์ register.setReviewCheck('Y')๋ฅผ ํตํด์ reviewCheck๋ฅผ Y๋ก ๋ณ๊ฒฝ์์ผ์ค ์๋ ์๊ณ ,
//๋ฆฌ๋ทฐ ๋ฑ๋ก ์ฌ๋ถ ์ฒดํฌ
registerDTO.setReviewCheck('Y');
๊ทธ๋ฅ DTO์ reviewCheck๋ฅผ ์ถ๊ฐํด์ setReviewCheck('Y')๋ก ๋ณ๊ฒฝ์์ผ์ค ์๋ ์๋ค.
๋ ๋ค ๊ฐ๋ฅ์ ํ์ง๋ง DTO๋ฅผ ์ฌ์ฉํ๋ ๋๋ฒ์งธ ๋ฐฉ๋ฒ์ด ํจ์ฌ ์งง๊ณ ํธํ๋ฐ, ์ฒซ๋ฒ์งธ ๋ฐฉ๋ฒ์ ์ฐ๋ ์ด์ ๋ ๋ฌด์์ผ๊น ํ๋ ์๊ฐ์ด ๋ค์ด์ ์ฐพ์๋ณด์๋ค.
DTO์ Entity
DTO(Data Transfer Object)๋ ๋ฐ์ดํฐ ์ ์ก๋ง์ ์ํ ๊ฐ์ฒด๋ก, ๋น์ฆ๋์ค ๋ก์ง์ ํฌํจํ์ง ์๋๋ค, ์ธ๋ถ๋ก ๋ ธ์ถ ์ ๊ณ์ธต ๊ฐ์ ๊ฒฐํฉ๋๊ฐ ๋์์ง ์ ์๋ค.
Entity๋ ๋ก์ง(๋ฉ์๋)๊ณผ ๋ฐ์ดํฐ ์ํ๋ฅผ ํฌํจํ๋ค. ๋ก์ง์ ํฌํจํ์ง ์์์ ์ธ๋ถ ๊ณ์ธต์์๋ ์ฌ์ฉํ ์ ์๋ค,.
๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ์ง ์๊ณ ๋จ์ํ ๋ณด์ฌ์ฃผ๋ ์ฉ๋๋ก ์ฌ์ฉํ ๋๋ DTO๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ์ ํฉํ๊ณ ,
๋ฐ์ดํฐ๊ฐ ๋ก์ง์ ๋ฐ๋ผ ๋ณ๊ฒฝ๋์ด์ผ ํ๋ ๊ฒฝ์ฐ์๋ Entity๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ์ ํฉํ๋ค.
์ด๋ ๊ฒ ๋ถ๋ฆฌํด์ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ์ด ์๋ค.
1. ๊ฒฐํฉ๋๋ฅผ ๊ฐ์์ํฌ ์ ์๋ค
์ํฐํฐ์ DTO๋ก ๋ถ๋ฆฌํ์ฌ ์ฌ์ฉํ๋ฉด ์๋ก์ ๋ณํ์ ์ํฅ์ ๋ ๋ฐ์ ์ ์๋ค. ์ํฐํฐ์ ๋ด๋ถ ๊ตฌํ์ด ๋ฐ๋๋๋ผ๋ DTO์ ๊ตฌ์กฐ๋ ์ธ๋ถ ์ธํฐํ์ด์ค์ ์ํฅ์ ์ฃผ์ง ์๋๋ค.
2. ์ ์ฐ์ฑ์ด ์ฆ๊ฐํ๋ค
์ํฐํฐ๋ ๋ก์ง์ ํฌํจํ ๋๋ฉ์ธ ๋ชจ๋ธ์ ๊ฐ์ฒด์ด๊ณ , DTO๋ ๋ฐ์ดํฐ ์ ์ก ๋ชจ๋ธ์ ๊ฐ์ฒด์ด๋ค. ์ํฐํฐ์ DTO๋ฅผ ๋ถ๋ฆฌํ๋ฉด ๋๋ฉ์ธ ๋ชจ๋ธ๊ณผ ๋ฐ์ดํฐ ์ ์ก ๋ชจ๋ธ ๊ฐ๊ฐ์ ๋ ๋ฆฝ์ ์ผ๋ก ์์ ํ๊ณ ํ์ฅํ ์ ์๋ค.
3. ํํ์ ๋ถ๋ฆฌํ ์ ์๋ค
์ธ๋ถ ์์คํ
๊ณผ์ ๋ฐ์ดํฐ ๊ตํ์ ์ํด์๋ ์ํฐํฐ์ ๋ด๋ถ ๊ตฌ์กฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ ์ข
์๋์ง ์๊ณ , ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ธ๋ถ๋ก ํํํด์ผ ํ๋ค. ์ด ๋ DTO๊ฐ ์ฐ์ธ๋ค.
์๋ฅผ ๋ค์๋ฉด, ํ์ ์ ๋ณด๋ฅผ ๋ด๋ member๋ผ๋ ์ํฐํฐ๊ฐ ์๋ค. ์ด ์ํฐํฐ์๋ ์ฌ์ฉ์์ ์์ด๋, ์ด๋ฆ, ์ด๋ฉ์ผ, ์ฃผ์, ์ฑ๋ณ ๋ฑ์ด ํฌํจ๋์ด ์๋ค. ๊ทธ๋ฌ๋ ์์ด๋ ์ฐพ๊ธฐ๋ฅผ ์งํํด์ ์์ด๋๋ฅผ ๋
ธ์ถ์ํค๋ ค๋ฉด ์ด๋ฆ๊ณผ ์์ด๋๋ง ํ์ํ๋ค. ์ด ๋ ์ํฐํฐ ์ ์ฒด๋ฅผ ์ ์กํ์ง ์๊ณ DTO์ ์ด๋ฆ๊ณผ ์์ด๋๋ง ๋ด์์ ์ ์กํ ์ ์๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ํฐํฐ์ ๋ด๋ถ ๊ตฌ์กฐ์ ๋น์ฆ๋์ค ๋ก์ง์ ๋ํ ์์กด์ฑ์ ๋ฎ์ถ๋ฉด์, ํ์ํ ์ ๋ณด๋ง ๊ฐ๊ฒฐํ๊ฒ ํํํ ์ ์๋ค.
๊ทผ๋ฐ ์ฌ๊ธฐ์ ์ฃผ์ํ ์ ! DTO๋ผ๊ณ ๋ฐ์ดํฐ ๊ฐ๊ณต์ ํ์ง ๋ชปํ๋ ๊ฒ์ ์๋๋ค. ์์ ์ฝ๋์ฒ๋ผ DTO๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ ์ ์๋ค.
DTO๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด๊ดํ๊ณ ์ ๋ฌํ๊ธฐ ์ํ ์ฉ๋๋ก ์ค๊ณ๋๊ณ , ์ฃผ์ ๋ชฉ์ ์ด ๋ฐ์ดํฐ์ ์ ์ก์ด๋ ๊ตํ์ ์ํ ์ฉ๋์ด๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฌํ ์ฉ๋๋ก ์ฐ๋ ๊ฒ ์์ ์ฅ์ ๋ค๋ ํฌํจํ๋ฉด์ ๋ฐ๋์งํ ๋ฟ์ด๋ค.
ํ์ง๋ง ๋์ ๋ฐ๋ผ์๋ DTO์ ๊ฐ๊ณต ์์ ์ด ํ์ํ ๊ฒฝ์ฐ๊ฐ ์์ ์ ์๋๋ฐ, ๊ทธ ์ค ๋ํ์ ์ธ ํ๋๋ ํด๋ผ์ด์ธํธ๊ฐ ์ ๋ ฅํ ๋ฐ์ดํฐ๊ฐ ๊ฐ๊ณต๋์ด์ผ ํ๋ ๊ฒฝ์ฐ์ด๋ค. ์๋ฅผ ๋ค์ด, ์ ํ๋ฒํธ๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ ํ์ดํ์ ์ ๊ฑฐํ๊ฑฐ๋, ํน์ ํ์์ ๋ง๊ฒ ๊ฐ๊ณตํ๋ ๋ฑ์ ๊ฒฝ์ฐ๊ฐ ์๋ค.
'๐ฅ๏ธ > Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring] JPA ๋? (0) | 2023.07.05 |
---|---|
[Spring] Spring ์๋ ธํ ์ด์ ์ ๋ฆฌ (0) | 2023.07.05 |
[Spring] SpringToolSuite4 ํ๋ก๊ทธ๋จ ์คํ ์๋ ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ (0) | 2023.06.03 |
[Spring] Spring Boot ๋ฐฐํฌํ๊ธฐ (0) | 2023.05.30 |
[Spring] ๊ฒ์ํ ํ๋ก์ ํธ ํ ๋ ์ ์ฉํ๋ sql๋ฌธ (0) | 2023.05.03 |