๋ณธ ํฌ์คํ ์ ํจ๊ป์๋ผ๊ธฐ ์ฑ ์ ์ฝ๊ณ ์์ฑํ์์ต๋๋ค. ์๋ผ๊ธฐ ํํธ์์ ๊ฐ๋ช ๊น๊ฒ ๋ณธ ๋ถ๋ถ, ๋ค์ ์ฐพ์๋ด์ผ ํ ๊ฒ ๊ฐ์ ๋ถ๋ถ๋ค ์์ฃผ๋ก ์ ๋ฆฌํ์์ต๋๋ค. ์ค์๋ฅผ ๋ํ๋ ์์ธ ์ฑ ์์ ์๊ฐํ๋ ์ค์ ๋ฌธํ์๋ ๋ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ๋ฐ๋ก ์ค์ ์๋ฐฉ๊ณผ ์ค์ ๊ด๋ฆฌ ์ ๋๋ค. ์ค์ ์๋ฐฉ์ ์ค์๋ก ๊ฐ๋ ๊ฒฝ๋ก๋ฅผ ์ฐจ๋จํ๋ ค๊ณ ํฉ๋๋ค. ์ด ๋ง์ ์ค๋ฌด์ ๋์ ํ๋ฉด, ์์ง์ ์ธ ์กฐ์ง์์ ์์ฌ๊ฐ ๋ถํ์ง์์๊ฒ "์ด๋ฒ์ ์ค์ํ๋ฉด ์ฃฝ์ด!" ์ ๋๊ฐ ๋๊ฒ ์ต๋๋ค. ๋ชจ๋ ์ค์๋ฅผ ์๋ฐฉํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅ์ ๊ฐ๊น์ด ์ผ์ ๋๋ค. ์๋ฌด๋ฆฌ ์ ๋ฌธ๊ฐ๋ผ๊ณ ํด๋ 1์๊ฐ์ ํ๊ท 3~5๊ฐ์ ์ค์๋ฅผ ์ ์ง๋ฅธ๋ค๊ณ ์๊ฐ๋์ด์์ต๋๋ค. (๊ฐ์ธ์ ์ธ ๊ถ๊ธ์ ์ธ๋ฐ ์ฌ๊ธฐ์ ๋งํ๋ ์ค์๊ฐ ์ด๋ค ๊ฒ์ผ๊น์? ๊ฐ๋ฐ์๋ก ๋ฐ์ง๋ฉด ์ค์๊ฐ์ผ๋ก ์คํ๋๋ค๊ฐ ์์ ํ๋ ๊ฒ๋ ํฌํจ์ด ๋ ๊น์? ์ ๋ฌธ๊ฐ๊ฐ 1์๊ฐ์ 3~5๋ฒ ์ ์ง๋ฅผ ..
warp๋ macOS์์ terminal๊ณผ iterm2๋ฅผ ๋์ฒดํ๊ธฐ ์ํ ๊ฐ๋ ฅํ ํฐ๋ฏธ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค. ์ฌ์ค ๊ฐ์๋ก ํฐ๋ฏธ๋์ ์ฌ์ฉํ ์ผ์ด ๋ง์ด ์์ด์ง๊ธด ํ์ง๋ง, ์์ง๋ git ๋ช ๋ น์ด๋ ssh ์ ์์ ํฐ๋ฏธ๋์ ์ด์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ด ์์ต๋๋ค. ์ ์๊ฒ๋์๋ง์ ๋ค์ด๋ฐ์ ์ฌ์ฉํ์ง ์ด์ 10์ผ์ ๋ ๋์๋๋ฐ, ๊ฐ๋จํ ๊ธฐ๋ฅ ์๊ฐ์ ํจ๊ป ์ฌ์ฉ ํ๊ธฐ๋ฅผ ๋จ๊ฒจ๋ณด๋ ค๊ณ ํฉ๋๋ค. ์ค์น ๋ฐฉ๋ฒ brew brew install warp ์ง์ ๋ค์ด๋ก๋ https://app.warp.dev/get_warp ์ฒซ์ธ์ ์ด๊ฒ IDE์ผ ํฐ๋ฏธ๋์ด์ผ? UI๊ฐ ์ ๋ง ์ด์๊ณ ๊ธฐ๋ฅ์ด ๋ค์ํฉ๋๋ค. ๊ธฐ์กด ๋งฅ ๊ธฐ๋ณธ terminal์ ์ฌ์ฉํ์๋ ๋ถ๋ค์ ํ๋กํ์ผ ๊ธฐ๋ฅ ๋ฑ ๋ถ์กฑํ ๋ถ๋ถ์ ๋์ ํ๊ธฐ ์ํด iterm2์ ๋ง์ด ์ฌ์ฉํ์๋๋ฐ์, ๋ณดํต oh-my-zsh์ ..

๋ณธ ํฌ์คํ ์ ํจ๊ป์๋ผ๊ธฐ ์ฑ ์ ์ฝ๊ณ ์์ฑํ์์ต๋๋ค. ์๋ผ๊ธฐ ํํธ์์ ๊ฐ๋ช ๊น๊ฒ ๋ณธ ๋ถ๋ถ, ๋ค์ ์ฐพ์๋ด์ผ ํ ๊ฒ ๊ฐ์ ๋ถ๋ถ๋ค ์์ฃผ๋ก ์ ๋ฆฌํ์์ต๋๋ค. ๋ฌ์ธ์ด ๋๋ ๋น๊ฒฐ ์ด์ ํฌ์คํ ์์๋ ๊ฐ๋ณ๊ฒ ๋ค๋ฃจ๊ธดํ์ง๋ง, ๋จ์ํ ์ผ์ ๋จ์ง ์ค๋ ์๊ฐ ๋ฐ๋ณตํ๋ค๊ณ ํด์ ๋ฌ์ธ์ด ๋๋ ๊ฒ์ ์๋๋๋ค. ๊ฑท๊ธฐ, ์์น์ง ๋ฑ์ ํ์์ ๊ณ์ ํ์ง๋ง "๊ฑท๊ธฐ์ ๋ฌ์ธ"์ด๋ผ๋ ์ง "์์น์ง์ ๋ฌ์ธ"์ด๋ผ๋ ๋ง์ ์ ์ฌ์ฉํ์ง ์์ต๋๋ค. ๋ค๋ฅธ ์์ญ์์๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ์ฑ ์์๋ ์์ ์ด ์ค๋ซ๋์ ํด์จ ๊ฒ ์ค ์ค์ ๋ก ์ญ๋์ด ์ฆ๊ฐํ ๊ฒ๊ณผ ๊ฑฐ์ ๋ณํ๊ฐ ์๋ ๊ฒ์ ๊ฐ๋ฅด๋ ์ฐจ์ด๋ฅผ ๊ฐ์กฐํ๊ณ ์์ต๋๋ค. ๊ฐ์ฅ ํฐ ์์ ์ค ํ๋๋ ๋ฐ๋ก ํผ๋๋ฐฑ ์ ๋๋ค. ๊ฑท๊ธฐ์ ์์น์ง์ ์์ฃผ ์ด๋ ธ์ ๋๋ฅผ ์ ์ธํ๊ณ ๋ ํผ๋๋ฐฑ์ ๋ฐ์ ์ผ์ด ์์ต๋๋ค. ์ด๋ ธ์ ๋๋ ํผ๋๋ฐฑ์ ๋ฐ์ผ๋ฉด์ ๊ฑท๊ธฐ ์ค๋ ฅ๊ณผ ์์น์ง ..
๋ณธ ํฌ์คํ ์ ํจ๊ป์๋ผ๊ธฐ ์ฑ ์ ์ฝ๊ณ ์์ฑํ์์ต๋๋ค. ์๋ผ๊ธฐ ํํธ์์ ๊ฐ๋ช ๊น๊ฒ ๋ณธ ๋ถ๋ถ, ๋ค์ ์ฐพ์๋ด์ผ ํ ๊ฒ ๊ฐ์ ๋ถ๋ถ๋ค ์์ฃผ๋ก ์ ๋ฆฌํ์์ต๋๋ค. ํ์ต ๋ํ๊ต ๋ ์ฝ๋ฉ์ ์ ํ๋ ์น๊ตฌ๊ฐ ์๊ณ ์ฑ์ ์ด ๋์ ์น๊ตฌ๊ฐ ์์์ต๋๋ค. (๋ ๋ค ์ํ๋ ์น๊ตฌ๋ ์์์ง๋ง ์ฌ๊ธฐ์ ๋ ผ์ธ๋ก ์๊ฐํ๊ฒ ์ต๋๋ค.) ์ด ๋ ์น๊ตฌ์ ์ฐจ์ด์ ์ ๋ฌด์์ด์์๊น์? ์ฐธ๊ณ ๋ก ์ ๋ ๋ค ๋ชปํ๋ ํ์์ด์๊ณ , ๋ ๋ค ์ํ๋ ์น๊ตฌ๋ ๋ฌผ๋ก ์ด๊ฑฐ๋์ ๋ ์ค ํ๋๋ผ๋ ์ ํ๋ ์น๊ตฌ๊ฐ ๋๋ฌด ๋ถ๋ฌ์ ๋ ๊ธฐ์ต์ด ๋ฉ๋๋ค. ์ด ์ฑ ์์๋ ํ๊ต ๋ค๋ ๋ ๊ณต๋ถ๋ฅผ ์ ํ๋ ์น๊ตฌ๊ฐ ํ์ค(์ค๋ฌด)์์๋ ๊ทธ ๊ณต๋ถ์ ๋์์ ๋ฐ์ง ๋ชปํ๋ ๊ฒฝ์ฐ์ ๋ํด ์๊ฐํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ์ ๋ ํ๋ ํ์ต์ ํ๊ต ํ์ต, ํ์ค์์ ํ๋ ํ์ต์ ์ผ์ ํ์ต์ด๋ผ๊ณ ๊ตฌ๋ถํฉ๋๋ค. ํ๊ต ํ์ต ์ผ์ ํ์ต ์ฑ๊ฒฉ ๊ฐ๋ณ์ ํ๋ ฅ์ ..
์์ค ์ฝ๋๋ ์ฌ๊ธฐ ์์ต๋๋ค. ๋ฌธ์ ๋ ์ฌ๊ธฐ ์์ต๋๋ค. Problem You are given an integer array matchsticks where matchsticks[i] is the length of the ith matchstick. You want to use all the matchsticks to make one square. You should not break any stick, but you can link them up, and each matchstick must be used exactly one time. Return true if you can make this square and false otherwise. Example 1: Input: matchsticks = [1..
์์ค ์ฝ๋๋ ์ฌ๊ธฐ ์์ต๋๋ค. ๋ฌธ์ ๋ ์ฌ๊ธฐ ์์ต๋๋ค. Problem Given an unsorted array of integers nums, return the length of the longest consecutive elements sequence. You must write an algorithm that runs in O(n) time. Example 1: Input: nums = [100,4,200,1,3,2] Output: 4 Explanation: The longest consecutive elements sequence is [1, 2, 3, 4]. Therefore its length is 4. Example 2: Input: nums = [0,3,7,2,5,8,4,6,0,1] Outp..
์์ ๋ถํฐ '์ฝ์ด์ผ์ง ์ฝ์ด์ผ์ง' ํ๋ค๊ฐ ์ฑ ์ ๊ตฌ๋งคํ์ง ์ด๋๋ง ์ธ ๋ฌ์ด ํ๋ฅด๊ณ .. ๋ธ๋ก๊ทธ๋ฅผ ๋งค์ผ ํฌ์คํ ํ๊ธฐ ์ํด ์ต์ง๋ก ๋ฌด์ธ๊ฐ๋ฅผ ์ฐพ์๋ด๋ ์ค, ๋ชจ๋ํฐ ์์ ๋์ฌ์๋ "ํจ๊ป์๋ผ๊ธฐ"๊ฐ ๋ณด์์ต๋๋ค. ๋ฆ์ ์๊ฐ์ ์ฝ๊ธฐ ์์ํ์ง๋ง ์๋ฒฝ๊น์ง ์ ๋ ์ ์๋ฃํ๊ณ ํ๊ธฐ๋ฅผ ํฌ์คํ ํด์ผ๊ฒ ๋ค๊ณ ๋ง์๋จน์ด์ต๋๋ค. (์ด์ ๋๋ฉด ๊ฑฐ์ ๋ธ๋ก๊ทธ ํฌ์คํ ์ค๋ ) ๋จ์ ํ๊ธฐ ์์ฑ์ด ๋ชฉ์ ์ด ์๋๋ผ ๋์ค์ ์ฑ ์ ๋ค์ ๋ณด์ง ์๊ณ ์ฐพ์๋ณผ ์ ์์ ์ ๋๋ก ๊ฐ๋ช ๊น์๋ ๋ถ๋ถ๋ค์ ์ ๋ฆฌํ๋ ๋ชฉ์ ์ผ๋ก ํ๊ธฐ ๊ฒธ ์ ๋ฆฌ ์คํํธํฉ๋๋ค! ์ด ๊ธ ์์ฒด๋ ์๋ฌด๋ฐ ๋์์ด ์ ๋ ํ๋ฅ ์ด ๊ต์ฅํ ๋์ผ๋ฏ๋ก 1๋ถ 1์ด๊ฐ ์๊น์ด ๋ถ๋ค์ ์คํต์ ๊ถ์ฅํฉ๋๋ค. (์ฌ๊ธฐ๋ถํฐ ์งง์ ํ๊ธฐ) ์ฑ ์ ์ด ์ธ ๊ฐ์ ํํธ๋ก ๋๋ ์ ธ ์์ต๋๋ค. ์๋ผ๊ธฐ ํจ๊ป ์ ์์ผ ๋จผ์ ๊ฐ ํํธ์ ๋ํ ์ด ํ์ ์งง๊ฒ ์์ฝํ๋ฉด, ์๋ผ..
Overview JPA์ ๋ฐ์ดํฐ ํ์ ์ ํฌ๊ฒ ์ํฐํฐ ํ์ (Entity Type)๊ณผ ๊ฐ ํ์ (Value Type)์ผ๋ก ๋๋ฉ๋๋ค. ๊ฐ๊ฐ ์ด๋ค ํน์ง์ ๊ฐ์ง๋์ง ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. Entity Type @Entity๋ก ์ ์ํ๋ ๊ฐ์ฒด๋ก ์๋ณ์(@Id)๋ก ๊ณ์ ์ถ์ ํ ์ ์์ต๋๋ค. ์๋ณ์๋ฅผ ์ ์ธํ ์์ฑ๋ค์ ์ค์ ์ ๋ฐ๋ผ ์ผ๋ง๋ ์ง ๋ณ๊ฒฝ ๊ฐ๋ฅํฉ๋๋ค. Value Type int, Integer, String ์ฒ๋ผ ๋จ์ํ ๊ฐ์ผ๋ก ์ฌ์ฉ๋๋ primitive ํ์ ์ด๋ refenrece ํ์ ์ ๋งํฉ๋๋ค. ์๋ณ์๊ฐ ์๊ณ ๊ฐ๋ง ์๊ธฐ ๋๋ฌธ์ ๋ณ๊ฒฝ์ ์ถ์ ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. Value Type์ ์ธ ๊ฐ์ง๋ก ๋ถ๋ฅ๋ฉ๋๋ค. Primitive Type primitive ํ์ ๊ณผ primitive ํ์ ์ ๊ฐ์ธ๋(boxing) wrapper typ..
๊ณ ์ ๊ฐ์ฒด๋? ๋ถ๋ชจ ์ํฐํฐ์ ์ฐ๊ด๊ด๊ณ๊ฐ ๋์ด์ง ์์ ์ํฐํฐ๋ฅผ ๋งํฉ๋๋ค. ์์ธํ๊ฒ๋ JPA์์๋ ๊ณ ์๊ฐ ๋ ๊ฐ์ฒด๋ฅผ ๋ณด์ก์์ ๋งก๊ธฐ๋ ๊ฒ ์๋๋ผ ํ์ ๋ ์์ด ์ ๊ฑฐํด ๋ฒ๋ฆด ์ ์์ต๋๋ค. ๋์ ๋ฐฉ์ ๋งคํ ์ ๋ํ ์ด์ ์ ์์ฑ ์ค orphanRemoval์ true๋ก ์ง์ ํ๋ฉด ๋ฉ๋๋ค. import java.util.ArrayList; import java.util.List; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.p..
Overview JPA๋ฅผ ์ฌ์ฉํ๋๋ผ Entity ํด๋์ค๋ฅผ ์ ์ํ๋ค๋ณด๋ฉด static ์์ฑ์๋ฅผ ๋ง๋ค์ด์ผ ํ ๋๊ฐ ์์ต๋๋ค. ํนํ ์ธ๋ถ์์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๊ฒ protected ๋ ๋ฒจ๋ก ๊ธฐ๋ณธ ์์ฑ์๋ฅผ ๋ง๋ค๊ณ , Dirty Checking ๋ฐฉ์ง๋ฅผ ์ํด setter ๋ํ ์ธ๋ถ๋ก ๊ณต๊ฐํ์ง ์์ต๋๋ค. lombok์ ๊ฐ์ด ์ฌ์ฉํ๋ฉด์ ํ์ํ ์์ฑ์๋ฅผ ๋ง๋ค๊ณ @Builder๋ฅผ ์์ฑ์์ ์ถ๊ฐํด ์ธ๋ถ์์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๊ฒ ํ๋ ๊ฒฝ์ฐ๋ ์์ง๋ง Builder ํจํด์ ์ด์ฉํ๋ฉด ํ์ํญ๋ชฉ๊ณผ ์ ํ์ ์ธ ํญ๋ชฉ์ ๊ตฌ๋ถํ๊ธฐ ์ด๋ ต๊ณ , ํ์ํญ๋ชฉ์ ๋ฐ๋ก ๋ฐ์ ์ ์๋ ๋ฐฉ๋ฒ์ด ์๊ธดํ๋ฐ ๊น๋ํ๊ฒ ์ ๋์ง ์์ต๋๋ค. ์ด๋ฐ ์ํฉ์์ ๋ค๋ค ์ด๋ป๊ฒ ๊ฐ๋ฐํ์๋์? IntelliJ์ ์์ฑ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก static ์์ฑ์๋ฅผ ๋ง๋ค์ด์ฃผ๋ ๊ธฐ๋ฅ์ด ์์ต๋๋ค. Bui..
- Total
- 181,998
- Today
- 35
- Yesterday
- 551
- JPA
- Spring Boot JPA
- Spring Boot
- ํจ๊ป ์๋ผ๊ธฐ
- ์คํ๋ง ๋ถํธ ํ์ ๊ฐ์
- @ManyToOne
- r
- JSON
- Jackson
- proto3
- Spring Data JPA
- ์คํ๋ง ๋ฐ์ดํฐ jpa
- gRPC
- ํด๋ฆฐ ์ํคํ ์ฒ
- spring boot jwt
- ์คํ๋ง๋ถํธ
- ์๊ณ ๋ฆฌ์ฆ
- ์คํ๋ง ๋ถํธ ํํ ๋ฆฌ์ผ
- Spring Boot Tutorial
- ํจ๊ป ์๋ผ๊ธฐ ํ๊ธฐ
- QueryDSL
- leetcode
- ํฅ์ฌ๊ณ ๋ ์ํคํ ์ฒ
- Linux
- spring boot app
- ์คํ๋ง ๋ถํธ ์ ํ๋ฆฌ์ผ์ด์
- intellij
- ์คํ๋ง ๋ถํธ
- spring boot application
- Java