728x90 ๊ฐ์ธ ๊ณต๋ถ84 [Java] equals(), hashCode() โ equals() - java.lang.Object ํด๋์ค์ ์ ์๋์ด ์๋ค.package java.lang;...public class Object { ... public boolean equals(Object obj) { return (this == obj); } ...} - ๋ชจ๋ ์๋ฐ ๊ฐ์ฒด๋ผ๋ฆฌ ๋๋ฑ์ฑ์ผ์ ํ๋จํ ์ ์๋๋ก, ์ต์์ ํด๋์ค์ธ Object์ ์ ์๋์ด ์๋ ๋ฉ์๋์ด๋ค. (๋๋ฑ์ฑ์ด๋? ๋ ๊ฐ์ฒด๊ฐ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋์ผํ ๊ฒ์ ๋งํ๋ค. ๐[Java] ๋์ผ์ฑ, ๋๋ฑ์ฑ) - ์ฐธ์กฐ๊ฐ์ ๊ธฐ๋ฐ์ผ๋ก ๋๋ฑ์ฑ์ ํ๋จํ๋๋ก ๊ตฌํ๋์ด ์๋ค.- ๋ค์ ๋งํด, ๋ ๊ฐ์ฒด์ ์ฐธ์กฐ๊ฐ์ด ๊ฐ์ผ๋ฉด(๋ฌผ๋ฆฌ์ ์ผ๋ก ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ๋ฆฌํค๋ฉด) true๋ฅผ ๋ฆฌํดํ๋ค. - ๋ ๊ฐ์ฒด๊ฐ .. 2023. 10. 25. [Java] BlockingQueue โ BlockingQueue - ํ๊ฐ ๊ฝ ์ฐผ์ ๋ Object๋ฅผ ์ฝ์ ํ๋ ค๊ณ ํ ๋๋ ๊ณต๊ฐ์ด ์๊ธธ ๋๊น์ง waitํ๊ณ , ํ๊ฐ ๋น์์ ๋ Object๋ฅผ ๊บผ๋ด๋ ค๊ณ ํ ๋๋ ํ์ ์๋ก์ด Object๊ฐ ์ฝ์ ๋ ๋๊น์ง waitํ๋ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์๋ ํ์ด๋ค. - Thread-safeํ๋ค. - ์ฒ์์๋ Producer-Consumer Queue๋ฅผ ๊ตฌํํ๊ธฐ ์ํด ๋ง๋ค์ด์ก๋ค๊ณ ํ๋ค. โ BlockingQueue Methods - BlockingQueue์ ๋ฉ์๋๋ค์ ์์ธ๊ฐ ๋ฐ์ํ์ ๋ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๋๋์ ๋ฐ๋ผ ๋ค์๊ณผ ๊ฐ์ด ๋ถ๋ฅํ ์ ์๋ค. Throws Exception Special value Blocks Times out Insert add(e) offer(e) put(e) offer(e, time, unit) Rem.. 2023. 10. 18. HTTP form data ์ ์ก HTTP request message๋ HTTP header์ HTTP body๋ก ๊ตฌ์ฑ๋์ด ์๋ค. (์ฐธ๊ณ ๋ก, HTTP ๋ฉ์์ง์ ๋ํ ๋ ์์ธํ ์ค๋ช ์ ์ด์ ์ ๋ฐ๋ก ์ ๋ฆฌํด๋์๋ค.) ํค๋์๋ ์ฌ๋ฌ ๊ฐ์ง ํ์ํ ์ ๋ณด๋ค์ด ๋ด๊ธฐ๋๋ฐ, ์ด ์ค Content-Type์ HTTP body์ ๋ด๊ธด ๋ฐ์ดํฐ ํ์ ์ด ๋ฌด์์ธ์ง ๋ช ์ํ๋ ์ญํ ์ ํ๋ค. Content-Type์ ์ข ๋ฅ๋ก๋ ๋ํ์ ์ผ๋ก text/html, text/css, text/javascript, application/json, application/x-www-urlencoded, multipart/form-data ๋ฑ์ด ์๋ค. ์ด ์ค์์, ํ์ผ ์ ์ก์ ์ฌ์ฉ๋๋ multipart format์ ๋ํด ์์๋ณด๊ณ ์ ํ๋ค. (Content-Type: multipart/f.. 2023. 10. 4. [Java] Java TCP socket programming โ ์์ผ ํ๋ก๊ทธ๋๋ฐ์ด๋? - ํ๋ก์ธ์ค ๊ฐ์ ํต์ ์ ์ฌ์ฉ๋๋ ์ ๋๋จ(endpoint)์ธ ์์ผ์ ์ด์ฉํ ํต์ ํ๋ก๊ทธ๋๋ฐ - ํ๋ก์ธ์ค๋ผ๋ฆฌ๋ ํต์ ์ ํ ๋, ๊ฐ ํ๋ก์ธ์ค์ ์์ผ๋ผ๋ฆฌ ์ฐ๊ฒฐํ๊ณ , ์์ผ์ ํตํด ํต์ ํ๋ค. - ์์ผ๋ผ๋ฆฌ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ์ฐ๊ฒฐํต๋ก๋ ์ ๋ ฅ์คํธ๋ฆผ๊ณผ ์ถ๋ ฅ์คํธ๋ฆผ์ด๋ค. - ํต์ ํ๋ ๋ ์์ผ์ ์ ์ถ๋ ฅ์คํธ๋ฆผ์ ๊ต์ฐจ ์ฐ๊ฒฐ๋์ด, ํ์ชฝ ์์ผ์ ์ถ๋ ฅ์ด ๋ค๋ฅธ์ชฝ ์์ผ์ ์ ๋ ฅ์ด ๋๋ค. โ TCP socket programming ํน์ง - ์์ผ๋ผ๋ฆฌ ๋จผ์ ์ฐ๊ฒฐํ๊ณ ๋์ ํต์ ์ ์์ํ๋ค. (connection-oriented) - ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ 1:1๋ก ํต์ ํ๋ค. - ๋ฐ์ดํฐ๋ฅผ byte-stream์ผ๋ก ์ฃผ๊ณ ๋ฐ๋๋ค. - ์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ ์ ์ก์ ํ๋ค. - ์๋ฐ์์๋ TCP ์์ผ ํ๋ก๊ทธ๋๋ฐ์ ์ํด Socket,.. 2023. 9. 19. Facade ์์ ์๋ฐ Maven ํ๋ก์ ํธ์์ ๋ก๊ทธ๋ฅผ ์ฐ๊ธฐ ์ํด์ @Sl4fj ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉ, logback ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์กด์ฑ์ ์ฃผ์ ๋ฐ์ ์ฌ์ฉ์ค์ด๋ค. logback์ด Sl4fj์ ๊ตฌํ์ฒด์ด๊ณ , Sl4fj๊ฐ ์ผ์ข ์ ์ธํฐํ์ด์ค๋ผ๋ ์ฌ์ค๋ง ์ด๋ ดํ์ด ์๊ณ ์์๋๋ฐ, ๋ ์ ํํ ๋ฐ์ง๋ฉด Slf4j๋ facade๋ผ๋ ๊ฒ์ ์๊ฒ ๋์๋ค. ๊ทธ๋์ facade์ ๋ํด ๊ฐ๋ณ๊ฒ ๊ณต๋ถํด๋ณด๊ณ , ๊ธฐ๋ก์ ๋จ๊ฒจ๋ณด๊ณ ์ ํ๋ค. โ Facade ํจํด์ด๋? - ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์์ ์์ฃผ ์ฐ์ด๋, ์ํํธ์จ์ด ๊ณตํ ๋์์ธ ํจํด ์ค ํ๋ โ Facade๋? - ์ํํธ์จ์ด์ ์ด๋ค ์ปค๋ค๋ ์ฝ๋ ๋ถ๋ถ(์๋ฅผ ๋ค๋ฉด ํด๋์ค)์ ๋ํ ๊ฐ๋ตํ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ๊ฐ์ฒด - Facade๋ "์ธ๊ด" ๋๋ "๊ฑด๋ฌผ ์ ๋ฉด" ์ด๋ผ๋ ์๋ฏธ์ด๋ค. - facade๋ ๋ณต์กํ๊ฒ ์์ฑ๋ ์ธ.. 2023. 9. 16. [Java] ์๋ฐ ๋ก๊น (Logging) โ ๋ก๊น ์ด๋? - ์๊ฐ์ ๋ฐ๋ผ ์์คํ ์ ์ํ์ ์ด๋ฒคํธ ์ ๋ณด๋ฅผ ๊ธฐ๋กํ ๋ฐ์ดํฐ์ธ ๋ก๊ทธ๋ฅผ ์์ฑํ๋ ๊ณผ์ ์ ๋งํ๋ค. - System.out.println()์ ์ด์ฉํ์ฌ ๋ก๊น ํ ์๋ ์์ง๋ง, log4j, logback ๋ฑ์ ๋ก๊น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด๋ค. ๐ฅ System.out.println() ๋์ ๋ก๊น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ? 1๏ธโฃ ์ฑ๋ฅ ๊ด๋ จ- sout ๋ด๋ถ์์๋ newLine() ๋ฉ์๋๊ฐ ์คํ๋๋๋ฐ, ํด๋น ๋ฉ์๋์๋ synchronized ํค์๋๊ฐ ๋ถ์ด์๋ค.- ์ฆ, ๋ฉํฐ ์ค๋ ๋ ํ๊ฒฝ์ ํน์ ์ค๋ ๋์์ newLine()์ด ์คํ๋๋ ๋์ค์๋ ๋ค๋ฅธ ์ค๋ ๋์์ newLine()์ ์คํ์ํฌ ์ ์๋ค. - ๋ฐ๋ผ์ System.out.println()์ ์ฌ์ฉํ๋ฉด ์ฑ๋ฅ ์ ํ๊ฐ ๋ฐ์ํ๋ค. 2๏ธโฃ ๋ก๊ทธ ๊ด๋ฆฌ - printl.. 2023. 9. 6. ์ด์ 1 ยทยทยท 8 9 10 11 12 13 14 ๋ค์ 728x90