728x90 ๋ฐ์ํ Spring๐/๊ฐ๋จํ ๊ฒ์ํ ๋ง๋ค๊ธฐ7 [JPA] ๊ฐ๋จํ ๊ฒ์ํ ๋ง๋ค๊ธฐ - user (UserService) ์ง๋์๊ฐ ๊น์ง entity, DTO, Repository ๋ฅผ ๋ง๋ค์ด ๋ณด์๋ค. ์ค๋์ ํ์ Serivce ํจํค์ง๋ฅผ ์์ฑํ์ฌ UserService ํด๋์ค๋ฅผ ๋ง๋ค์ด ๋ณด๊ฒ ๋ค. ๋จผ์ ์๋น์ค! ์ ๋ํด ๊ฐ๋จํ๊ฒ ๊ฐ๋ ? ์ ๋ฆฌ ํ๊ณ ๊ฐ๊ฒ ๋ค. Service ๋? ์ Service๋ฅผ ์ดํดํ๊ธฐ ์ํด ํฐ ํ์ ๋ณด๊ฒ ์ต๋๋ค. Client๊ฐ Request๋ฅผ ๋ณด๋ธ๋ค.(Ajax, Axios, fetch๋ฑ..) Request URL์ ์๋ง์ Controller๊ฐ ์์ ๋ฐ๋๋ค. (@Controller , @RestController) Controller ๋ ๋์ด์จ ์์ฒญ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด Service ๋ฅผ ํธ์ถํ๋ค. Service๋ ์๋ง์ ์ ๋ณด๋ฅผ ๊ฐ๊ณตํ์ฌ Controller์๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋๊ธด๋ค. Controller ๋ Service ์ ๊ฒฐ๊ณผ.. 2023. 2. 12. [JPA] ๊ฐ๋จํ ๊ฒ์ํ ๋ง๋ค๊ธฐ - user (UserRepository) UserRepository ์ฝ๋ package com.example.projectpicker.user.repository; import com.example.projectpicker.user.entity.UserEntity; import org.springframework.data.jpa.repository.JpaRepository; public interface UserRepository extends JpaRepository { UserEntity findByUserEmail(String email); boolean existsByUserEmail(String email); } ๋ ํฌ์งํ ๋ฆฌ๋ class๊ฐ ์๋ interface๋ก ํ์ผ์ ์์ฑํด์ผํ๋ค. ์? (์ ๋ชฐ๋ผ์ ๊ตฌ๊ธ๋ง!) => Repository.. 2023. 2. 11. [JPA] ๊ฐ๋จํ ๊ฒ์ํ ๋ง๋ค๊ธฐ - user (LoginRequestDTO, LoginResponseDTO) ํ์๊ฐ์ DTO๋ฅผ ๋ชจ๋ ๋ง๋ค์ด๋ณด์๋ค. ์ด์ ํ์๊ฐ์ DTO๋ฅผ ๋ง๋ค์์ผ๋,, ๋ก๊ทธ์ธ! DTO ๋ ๋น ๋ฅด๊ฒ ๋ง๋ค์ด๋ณด์. ๋ค์ ํ๋ฒ ์๊ธฐ ์ํฌ๊ฒธ MVC ํ๋ฆ์ ํ๋ฒ ๋ณด๊ณ ์งํํ๊ฒ ๋ค. ๋จผ์ ๋ก๊ทธ์ธ ์์ฒญ DTO (LoginRequestDTO) ๋ถํฐ ๋ง๋ค๊ฒ ๋ค. LoginRequestDTO ์ ์ฒด ์ฝ๋ package com.example.projectpicker.user.dto; import lombok.*; import javax.validation.constraints.Email; import javax.validation.constraints.NotBlank; import javax.validation.constraints.Size; // ํด๋ผ์ด์ธํธ ----> ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ก ์๊ตฌ!!๊ณผ์ ์์ ์ฌ์ฉ๋๋ DTO (๋ก๊ทธ.. 2023. 2. 11. [JPA] ๊ฐ๋จํ ๊ฒ์ํ ๋ง๋ค๊ธฐ - user (UserSignupResponse DTO) ์ด์ ์๊ฐ UserSignUpDTO (ํ์๊ฐ์ ์์ฒญ DTO) ์ ๋ํด ๊ฐ๋จํ๊ฒ ์ค๋ช ํ๋ค. ์ด์ ํ์๊ฐ์ ์์ฒญ์ ํ์ผ๋ฉด ์๋ต์ด ์์ด์ผ๋๋๊น ๊ทธ ๋ถ๋ถ์ ๋ํด DTO๋ฅผ ๋ง๋ค์ด ๋ณด๋๋ก ํ๊ฒ ๋ค. ์ผ๋จ ๋ค์ ํ๋ฒ MVC ํ๋ฆ์ ๋ํด ๋ณด๊ณ ์์ํ์ UserSignUpResponseDTO ๋ฅผ ๋ง๋ค๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์๋ต๋ฐฉํฅ์ด๋ค! (์์ง๋ง) ๊ทธ๋ฌ๋ฉด ์ง๋๋ฒ ํ์๊ฐ์ ์์ฒญ DTO์๋ ๋ค๋ฅด๊ฒ Entity ์์ DTO๋ก ๊ฐ์ผ๋๋ ํ๋ฆ์์ ์ ์ ์๋ค.(์ ์ฌ์ง ์ฐธ๊ณ ) UserSignUpResponseDTO ์ ์ฒด ์ฝ๋ package com.example.projectpicker.user.dto; import com.example.projectpicker.user.entity.UserEntity; import com.fasterxml... 2023. 2. 11. ์ด์ 1 2 ๋ค์ 728x90 ๋ฐ์ํ