์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- ํ๋ ์ ๊ตฌ์กฐ
- i-type
- mariadb
- xv6
- ์ฐ๋ถํฌdb
- ์ค๋ธ์
- tcp ์ธ๊ทธ๋จผํธ
- 99ํด๋ฝ
- ํ๋ก์ด๋์์
- reducible
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- ์๋น์ค ํ๋ฆฌ๋ฏธํฐ๋ธ
- ์ฝ๋ฉํ ์คํธ์ค๋น
- ํ ํฐ ๋ฒ์ค
- ๊ฐ๋ฐ์์ทจ์
- ์์๋ฒํธ
- ์ค๋ฅ์ ์ด
- tcp ํ๋กํ ์ฝ
- ๋น์ฃผ๊ธฐ์ ํธ
- well known ํฌํธ
- leetcode
- ์ค๋ ๋
- til
- ์ค๋ฅ๊ฒ์ถ
- IEEE 802
- ๋ฐ์ดํฐ ์ ์ก
- ํญํด99
- ์ฃผ๊ธฐ์ ํธ
- git merge
- Today
- Total
๋ชฉ๋ก๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ (160)
Unfazedโ๏ธ๐ฏ
Collection ์ธํฐํ์ด์ค์ add ๋ฉ์๋๋ ์ปฌ๋ ์ ์ ํน์ ์์๋ฅผ ์ถ๊ฐํ๊ธฐ ์ํ ๋ฉ์๋์ด๋ค.์ฃผ์ ํน์ง๋ฐํ ๊ฐ: ์ปฌ๋ ์ ์ด ์ด ํธ์ถ๋ก ์ธํด ๋ณ๊ฒฝ๋๋ฉด true๋ฅผ ๋ฐํํ๊ณ , ๊ทธ๋ ์ง ์์ผ๋ฉด false๋ฅผ ๋ฐํํ๋ค.์ค๋ณต ์ฒ๋ฆฌ: ์ค๋ณต์ ํ์ฉํ์ง ์๋ ์ปฌ๋ ์ (์: Set)์์ ์ด๋ฏธ ํด๋น ์์๊ฐ ์กด์ฌํ๋ ๊ฒฝ์ฐ false๋ฅผ ๋ฐํํ๋ค.์ ์ฝ ์ฌํญ: ์ปฌ๋ ์ ์ ์ถ๊ฐํ ์ ์๋ ์์์ ์ ํ์ ๋ ์ ์์ต๋๋ค:null ์์ ๊ฑฐ๋ถํน์ ํ์ ์ ์์๋ง ํ์ฉ์์ธ ์ฒ๋ฆฌ: ์ปฌ๋ ์ ์ด ์ด๋ฏธ ์์๋ฅผ ํฌํจํ๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ ๋ค๋ฅธ ์ด์ ๋ก ์์ ์ถ๊ฐ๋ฅผ ๊ฑฐ๋ถํ๋ ๊ฒฝ์ฐ, false๋ฅผ ๋ฐํํ๋ ๋์ ์์ธ๋ฅผ ๋ฐ์์์ผ์ผ ํ๋ค.boolean ํ์ ์ ๋ฐํํ๋ ์ด์ ์ปฌ๋ ์ ๋ณ๊ฒฝ ์ฌ๋ถ ํ์ธ: ๋ฉ์๋ ํธ์ถ๋ก ์ปฌ๋ ์ ์ด ์ค์ ๋ก ๋ณ๊ฒฝ๋์๋์ง ์ฌ๋ถ๋ฅผ ์๋ ค์ค๋ค.์ค๋ณต ํ์ธ ๋ฉ์ปค๋..
@PathVariable๋ชฉ์ : URI ๊ฒฝ๋ก์ ๋ณ์ ๊ฐ์ ์ถ์ถํ ๋ ์ฌ์ฉ์์: /users/{userId} → userId ํ๋ผ๋ฏธํฐ ์ถ์ถํน์ง:URL์ ๊ฒฝ๋ก ์ผ๋ถ๋ก ์ฌ์ฉ๋๋ฉฐ ํ์๊ฐ์ผ๋ก ์ฒ๋ฆฌ๋จRESTful ๋ฆฌ์์ค ์๋ณ์ ์ ํฉ (์: ํน์ ์ฌ์ฉ์ ์กฐํ)@GetMapping("/users/{userId}")public User getUser(@PathVariable String userId) { //} @RequestParam๋ชฉ์ : ์ฟผ๋ฆฌ ์คํธ๋ง(?key=value)์ ํ๋ผ๋ฏธํฐ ์ถ์ถ์์: /users?role=admin → role ๊ฐ ์ถ์ถํน์ง:์ ํ์ ํ๋ผ๋ฏธํฐ ์ฒ๋ฆฌ ๊ฐ๋ฅ (required=false)ํํฐ๋ง, ์ ๋ ฌ, ํ์ด์ง ๋ฑ ๋ถ๊ฐ ๊ธฐ๋ฅ์ ์ ํฉ@GetMapping("/users")public List getU..
JDBC๋ 1996๋ JDK 1.1์ ๊ณต์ ๋์ ๋ Java์ ํ์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ API๋ก, ๊ฐ๋ฐ์๋ค์ด ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ์์ฉํ ์ ์๋ ํ์คํ๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๊ธฐ ์ํด ์ค๊ณ๋์๋ค. ๊ทธ๋ฌ๋ ๋ฐ๋ณต์ ์ธ ์ฝ๋ ์์ฑ๊ณผ ์๋ ๋ฆฌ์์ค ๊ด๋ฆฌ๊ฐ ํ์ํด ๊ฐ๋ฐ ์์ฐ์ฑ์ด ๋ฎ๋ค๋ ํ๊ณ๊ฐ ์์๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด SQL Mapper์ ORM ๊ธฐ์ ์ด ๋ฐ์ ํ๊ฒ ๋์๋ค. ๐ก ์ ๋๋ผ์ด๋ฒ๊ฐ ํ์ํ๊ฐ?๋ฒค๋ ์ค๋ฆฝ์ฑ: ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ค JDBC ์ธํฐํ์ด์ค๋ง ์ฌ์ฉ → ์ค์ ๊ตฌํ์ ๊ฐ DB ๋ฒค๋์ ๋๋ผ์ด๋ฒ๊ฐ ๋ด๋นํ๋ซํผ ํธํ์ฑ: OS/๋คํธ์ํฌ ์ฐจ์ด๋ฅผ ๋๋ผ์ด๋ฒ๊ฐ ์ถ์ํ๐ ๋์ ํ๋ฆ์ ํ๋ฆฌ์ผ์ด์ → DriverManager์ ์ฐ๊ฒฐ ์์ฒญ๋ฑ๋ก๋ ๋๋ผ์ด๋ฒ๋ค ์ค JDBC URL ํจํด ์ผ์นํ๋ ๋๋ผ์ด๋ฒ ์ ํํด๋น ๋๋ผ์ด๋ฒ๊ฐ ๋ฌผ๋ฆฌ์ ์ฐ..
1. HTTP ์์ฒญ ์ฒ๋ฆฌ ํ๋ฆa) ์ ์ ์ํ(Closed)ํด๋ผ์ด์ธํธ → ์ปจํธ๋กค๋ฌ → ์๋น์ค → ์ธ๋ถ API ํธ์ถ → ์๋ต ๋ฐํ๋ชจ๋ ์์ฒญ์ด ์ปจํธ๋กค๋ฌ๋ฅผ ํตํด ์๋น์ค ๋ก์ง๊น์ง ์ ์์ ์ผ๋ก ์ ๋ฌ๋๋ค.b) Open ์ํ (Resilience4J)ํด๋ผ์ด์ธํธ → ์ปจํธ๋กค๋ฌ → ์ํท ๋ธ๋ ์ด์ปค(Open) → Fallback ์๋ต ์ฆ์ ๋ฐํ (์ธ๋ถ API ํธ์ถ ๋ฏธ๋ฐ์)์์ฒญ์ ์ปจํธ๋กค๋ฌ ์๋ํฌ์ธํธ์ ๋๋ฌํ์ง๋ง, ์ํท ๋ธ๋ ์ด์ปค๊ฐ ์ค์ ๋น์ฆ๋์ค ๋ก์ง ์คํ์ ์ฐจ๋จํ๋ค.์ธ๋ถ API ํธ์ถ ์์ด Fallback ๋ฉ์๋์์ ์ง์ ์๋ต ์์ฑ (์: 503 ์๋ฌ)2. ์ปจํธ๋กค๋ฌ ๊ณ์ธต ์ํฅ ๋ถ์๊ตฌ๋ถ์์ฒญ ๋๋ฌ ์ฌ๋ถ์ธ๋ถ API ํธ์ถ ์ฌ๋ถClosedโ โ Openโ โHalf-Openโ โ ๏ธ (์ ํ์ ํ์ฉ)์ปจํธ๋กค๋ฌ ์ง์ ๋ก๊ทธ: ์์ฒญ์ ํญ์ ๊ธฐ๋ก๋จ (HTTP ์..

HTTP ์ฟ ํค(HTTP cookie) : ์น ์๋ฒ์ ์ํด ์ฌ์ฉ์์ ์ปดํจํฐ์ ์ ์ฅ๋๋, '์ด๋ฆ์ ๊ฐ์ง ์์ ํฌ๊ธฐ์ ๋ฐ์ดํฐ'.์ธํฐ๋ท ์ฌ์ฉ์๊ฐ ์ด๋ ํ ์น์ฌ์ดํธ๋ฅผ ๋ฐฉ๋ฌธํ ๊ฒฝ์ฐ ์ฌ์ฉ์์ ์น ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์ธํฐ๋ท ์ฌ์ฉ์์ ์ปดํจํฐ๋ ๋ค๋ฅธ ๊ธฐ๊ธฐ์ ์ค์น๋๋ ์์ ๊ธฐ๋ก ์ ๋ณด ํ์ผ๋ก ์ฟ ํค, ์น ์ฟ ํค, ๋ธ๋ผ์ฐ์ ์ฟ ํค๋ผ๊ณ ๋ ํ๋ค. ์ฟ ํค์ ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ : ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ ๊ด๋ จ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ , ์ฌ์ฉ์๊ฐ ํด๋น ์๋ฒ์ ์ ๊ทผํ ๋๋ง๋ค ๊ทธ ์ ๋ณด๋ฅผ ํจ๊ป ์ ์กํ๊ฒ ํ๋ ๊ฒ๋ธ๋ผ์ฐ์ ๋ ์ฟ ํค ์ ๋ณด๋ฅผ ์ ์ฅํ ์ฑ ์์ด ์๊ณ , ์ด ๋ฉ์ปค๋์ฆ์ 'ํด๋ผ์ด์ธํธ ์ธก ์ํ' ๋๋ 'HTTP ์ํ ๊ด๋ฆฌ ์ฒด๊ณ(HTTP State Management Mechanism)๋ผ ํ๋ค. ๊ณตํต์ ์ธ ์ฟ ํค ์ ์ฅ ๋ฐฉ์๋ธ๋ผ์ฐ์ ๋ ์ฟ ํค๋ฅผ ๋ก์ปฌ ์ ์ฅ์์ ๋ณด๊ดํ๋๋ฐ ๊ฐ ์ฟ ํค๋ ์ด๋ฆ,..
Java์์ null์ ์ฐธ์กฐ ํ์ ๋ณ์๊ฐ ์๋ฌด ๊ฐ์ฒด๋ ๊ฐ๋ฆฌํค์ง ์์์ ๋ํ๋ด๋ ํน์ํ ๋ฆฌํฐ๋ด์ด๋ค. null์ ๊ฐ์ฒด๊ฐ ์๋๋ฉฐ, ๋ชจ๋ ์ฐธ์กฐ ํ์ ์ ํ ๋น ๊ฐ๋ฅํ์ง๋ง ์ฃผ์๊ฐ์ด 0x0์ผ๋ก ๊ณ ์ ๋์ด ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ด ์ฐจ๋จ๋๋ค.null์ ๋ณธ์ง์ ํน์ฑ๋ฆฌํฐ๋ด ํ์ : null์ ํค์๋๊ฐ ์๋ ๋ฆฌํฐ๋ด๋ก ๋ถ๋ฅ๋๋ฉฐ, instanceof ์ฐ์ฐ์๋ก ํ์ธ ์ ํญ์ false ๋ฐํ(null์ Object๊ฐ ์๋๊ธฐ ๋๋ฌธ)ํ์ ์์คํ : ๋ชจ๋ ์ฐธ์กฐ ํ์ (ํด๋์ค, ์ธํฐํ์ด์ค, ๋ฐฐ์ด)์ ํ ๋น ๊ฐ๋ฅํ์ง๋ง ๊ธฐ๋ณธํ(int ๋ฑ)์๋ ์ง์ ํ ๋น ๋ถ๊ฐํน์ฑ์ค๋ช ์ฃผ์๊ฐ0x0์ผ๋ก ๊ณ ์ ๋์ด ์ค์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์ฐจ๋จ๋ฉ๋ชจ๋ฆฌ ๋ ์ด์์๊ฐ์ฒด ํค๋ ์์ด ๋จ์ 0๊ฐ ์ ์ฅํ์ ์บ์คํ ์ด๋ค ์ฐธ์กฐ ํ์ ์ผ๋ก๋ ์บ์คํ ๊ฐ๋ฅ์ด๊ธฐํ ๊ธฐ๋ณธ๊ฐํด๋์ค ๋ฉค๋ฒ ๋ณ์์ ๊ฒฝ์ฐ ์๋์ผ๋ก null ์ด๊ธฐํnull..
๋ฌธ์ ๋งํฌhttps://leetcode.com/problems/invert-binary-tree/description/?envType=study-plan-v2&envId=top-interview-150 ๋ฌธ์ ์ ์ถ๋ ฅ์ ๋ ฅ: ์ด์ง ํธ๋ฆฌ์ ๋ฃจํธ(root) ๋ ธ๋์ถ๋ ฅ: ๊ฐ ๋ ธ๋์ ์์ ์ข์ฐ๋ฅผ ๋ค๋ฐ๊พผ ์ด์ง ํธ๋ฆฌ์ ๋ฃจํธ ๋ ธ๋๋ชจ๋ ๋ ธ๋์ ์ผ์ชฝ ์์๊ณผ ์ค๋ฅธ์ชฝ ์์์ ์๋ก ๊ตํํ๋ฉด ๋๋ ๋ฌธ์ ๋ค. ๋จ์ํ๊ฒ ๋ชจ๋ ๋ ธ๋๋ฅผ ์ํํ๋ฉด์ ํด๋น ๋ ธ๋์ ์์๋ค์ swapํ๋ฉด ๋๋๋ฐ, ๋ฌธ์ ๋ฅผ ํธ๋ ๊ณผ์ ์์ ์ฌ๊ท์ ์ผ๋ก ๊ณ์ swapํด์ฃผ๋ฉด ๋๊ฒ ๋ค๋ ๊ฒ์ ์์์ง๋ง ์ฌ๊ท ํธ์ถ ์์๋ฅผ ๊น๊ฒ ์์ํ๋ฉด์ ๊ตฌํํ๋๋ฐ ์ฝ์ง์ ํด์ ๋๋ ๋ฐ๋ฅผ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค. ์์ 4 / \ 2 7 / \ / \1 3 6 9 ์ฌ๊ท ํธ..

Java์์ start() ๋ฉ์๋๋ฅผ ํธ์ถํด์ผ ํ๋ ์ด์ ์ run() ๋ฉ์๋ ์ง์ ํธ์ถ์ ๋ฌธ์ ์ ์ ์์๋ณด์. 1. ์ค๋ ๋ ์คํ ๋ฉ์ปค๋์ฆ์ ํต์ฌ ์ฐจ์ดstart() ๋ฉ์๋์ ์ญํ ์๋ก์ด ํธ์ถ ์คํ(Call Stack)์ ์์ฑํ์ฌ JVM์ด ํด๋น ์ค๋ ๋๋ฅผ ์ค์ผ์ค๋งํ ์ ์๋๋ก ์ค๋น ์ํ๋ก ์ ํํ๋ค. ์ด ๊ณผ์ ์์ ๋ค์ดํฐ๋ธ ๋ฉ์๋ start0()๊ฐ ํธ์ถ๋๋ฉฐ, ์ด๋ OS ์์ค์์ ์ค์ ์ค๋ ๋ ๋ฆฌ์์ค๋ฅผ ํ ๋นํ๋ ์ญํ ์ ์ํํ๋ค. run() ์ง์ ํธ์ถ์ ๋ฌธ์ ์ ํ์ฌ ์คํ ์ค์ธ ์ค๋ ๋์ ํธ์ถ ์คํ์์ ๋๊ธฐ์ ์ผ๋ก ์ฝ๋๊ฐ ์คํ๋๋ค. ์ด๋ ๋จ์ ๋ฉ์๋ ํธ์ถ๊ณผ ๋์ผํ ๋ฐฉ์์ผ๋ก ์๋ํ๋ฉฐ, ๋ฉํฐ์ค๋ ๋ฉ์ ํต์ฌ์ธ ๋ณ๋ ฌ ์คํ์ด ๋์ง ์๋๋ค.// ์๋ชป๋ ์ฌ์ฉ ์์Thread myThread = new MyCustomThread();myThrea..
์ค๋ ๋ ์ค๋จ์ ํ์์ฑ๊ณผ ์ํฉ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ค๋ ๋๋ ์์์ ์๋นํ๋ค. ์ค๋ ๋๊ฐ ์คํ ์ค์ด์ง ์๋๋ผ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ปค๋ ์์์ ์ฌ์ฉํ๋ฉฐ, ์คํ ์ค์ธ ๊ฒฝ์ฐ CPU ์๊ฐ์ ํ ๋น๋ฐ๋๋ค. ์ด๋ฌํ ์์ ์๋น๋ ๋ถํ์ํ๊ฒ ์คํ๋๊ณ ์๊ฑฐ๋ ๋ ์ด์ ์์ ์ ์ํํ์ง ์๋ ์ค๋ ๋๊ฐ ์กด์ฌํ ๋ ๋ฌธ์ ๊ฐ ๋๋ค. ํนํ ๋ค์๊ณผ ๊ฐ์ ์ํฉ์์ ์ค๋ ๋ ์ค๋จ์ด ์๊ตฌ๋๋ค.๋ถํ์ํ ๋ฆฌ์์ค ํ์: ์์ ์ ์๋ฃํ ํ์๋ ์ค๋ ๋๊ฐ ์ข ๋ฃ๋์ง ์์ ๋ฆฌ์์ค๋ฅผ ๊ณ์ ์๋นํ๋ ๊ฒฝ์ฐ, ํด๋น ์ค๋ ๋๋ฅผ ์ข ๋ฃํจ์ผ๋ก์จ ์์ ์ฌ์ฉ์ ์ต์ ํํ ์ ์๋ค.๋น์ ์ ๋์ ๋์: ์๋ฒ์ ์์ฒญ์ ๋ณด๋ด๊ฑฐ๋ ๋ณต์กํ ๊ณ์ฐ์ ์ํํ๋ ๋์ค, ์์๋ณด๋ค ์ค๋ ๊ฑธ๋ฆฌ๋ ๊ฒฝ์ฐ๋ ์๋ต์ด ์๋ ๊ฒฝ์ฐ ์ค๋ ๋๋ฅผ ์ค๋จํด ์์คํ ์ ์ฒด์ ์์ ์ฑ์ ์ ์งํ ์ ์๋ค.์ ํ๋ฆฌ์ผ์ด์ ์ข ๋ฃ ์ ์ฒ๋ฆฌ: ๋ฉ์ธ ์ค๋ ๋๊ฐ ์ข ..
Java์์๋ ์ค๋ ๋๋ฅผ ์์ฑํ๋ ๋ ๊ฐ์ง ๋ฐฉ์์ด ์๋ค.Runnable ์ธํฐํ์ด์ค ๊ตฌํ ๋ฐฉ์๋ณ๋์ Runnable ๊ฐ์ฒด๋ฅผ ์์ฑํ ํ ์ด๋ฅผ Thread ํด๋์ค์ ์์ฑ์์ ์ ๋ฌํ์ฌ ์ค๋ ๋๋ฅผ ์์ฑํ๋ค.์ด์ ๊ฒ์๊ธ์์ ๋ค๋ฃฌ ๋ฐฉ์์ผ๋ก ์ฝ๋์ ๋ก์ง์ ๋ถ๋ฆฌํด์ ์์ฑํ ์ ์๋ค.Runnable ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋ ๋ฐฉ์์ ์ฝ๋์ ์ค๋ ๋ฉ ๊ธฐ๋ฅ์ ๋ถ๋ฆฌํ์ฌ ์์ฑํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ค๋ ๋๋ก ์คํํ ์์ ์ ์ง์คํ ์ ์๊ณ , ๋์ผํ Runnable์ ์ฌ๋ฌ ์ค๋ ๋์์ ์ฌ์ฌ์ฉํ๊ฑฐ๋ ํ ์คํธํ๊ธฐ๊ฐ ์ฉ์ดํ๋ค. ๋ํ, ์์์ ์ ์ฝ ์์ด ๋ค๋ฅธ ํด๋์ค๋ฅผ ์์๋ฐ์ ์ ์๋ค๋ ์ ๋ ํฐ ์ด์ ์ด๋ค. Thread ํด๋์ค๋ฅผ ์์๋ฐ๋ ๋ฐฉ์Thread ํด๋์ค ์์ฒด๊ฐ Runnable ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๊ณ ์์ผ๋ฏ๋ก, ์ด๋ฅผ ์์ํ์ฌ run()..