๋ฐ˜์‘ํ˜•

BackEnd๐Ÿงต 40

TIL - JSP

JSP(Java Server Pages) ๋ž€? JSP๋Š” HTML ์ฝ”๋“œ์— Java ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด ๋™์ ์ธ ์›นํŽ˜์ด์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ํ•™๋ถ€์—์„œ ์—ฌ๋Ÿฌ๋ฒˆ ๋ฐฐ์› ์ง€๋งŒ ์ œ๋Œ€๋กœ ์‹ค์Šตํ•ด๋ณด์ง€ ์•Š์€๊ด€๊ณ„๋กœ ๊ฐœ๋…๋งŒ ์•Œ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์ œ๋Œ€๋กœ ์•Œ๊ณ ๊ฐ€์ž. JSP๊ฐ€ ์‹คํ–‰๋˜๋ฉด์„œ ์ž๋ฐ”์˜ Servlet์œผ๋กœ ๋ณ€ํ™˜์ด ๋˜๊ณ  WAS์—์„œ ๋™์ž‘๋˜๋ฉด์„œ ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋ ‡๊ฒŒ ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์›นํŽ˜์ด์ง€์™€ ํ•จ๊ป˜ ํด๋ผ์ด์–ธํŠธ๋กœ ์‘๋‹ตํ•œ๋‹ค. ์ฆ‰ Servlet์œผ๋กœ ์›นํŽ˜์ด์ง€๋ฅผ ๊ตฌํ˜„ํ•˜๊ฒŒ๋˜๋ฉด Java์ฝ”๋“œ ๋‚ด๋ถ€์— Html ์ฝ”๋“œ๊ฐ€ ์„ž์ด๊ฒŒ ๋˜๊ณ , Html์„ Java๋‚ด๋ถ€์—์„œ ๊ตฌํ˜„ํ•˜๊ฒŒ ๋˜๋ฉด ๊ต‰์žฅํžˆ ๊ท€์ฐฎ๊ณ  ์–ด๋ ค์›Œ์ง„๋‹ค. (2023.07.17 - [TIL๐Ÿ“] - TIL - Servlet ์ฐธ๊ณ ) JSP ๋™์ž‘๋ฐฉ์‹ [JSP์— ํ•ด๋‹นํ•˜๋Š” ์„œ๋ธ”๋ฆฟ์ด ์—†์„๊ฒฝ์šฐ] 1. JSP ํŽ˜์ด์ง€๋กœ..

BackEnd๐Ÿงต 2023.07.20

[Web] OAuth 2

OAuth2๋ž€? ํŠน์ • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(Client)์—์„œ ์‚ฌ์šฉ์ž์˜ ์ธ์ฆ์„ ์ง์ ‘ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๊ณ , ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” ์‹ ๋ขฐํ• ๋งŒํ•œ ์จ๋“œํŒŒํ‹ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(Github, Kakao, Google, Facebook ๋“ฑ)์—์„œ ์‚ฌ์šฉ์ž์˜ ์ธ์ฆ์„ ๋Œ€์‹  ์ฒ˜๋ฆฌํ•˜๊ณ  ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ž๊ฒฉ์ฆ๋ช…์šฉ ํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•˜์—ฌ, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ•ด๋‹น ํ† ํฐ์„ ์ด์šฉํ•˜์—ฌ ์จ๋“œํŒŒํ‹ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ๋ฐฉ์‹์ด๋‹ค. ๋˜๋Š” ์ถ”๊ฐ€์ ์ธ ์ธ์ฆ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•œ ์šฉ๋„๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์•„์ด๋””/ํŒจ์Šค์›Œ๋“œ ๋กœ๊ทธ์ธ์— ์ถ”๊ฐ€์ ์œผ๋กœ OAuth2๋ฅผ ์ด์šฉํ•˜์—ฌ ์ธ์ฆ์„ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํŠน์ • ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉ์ž์˜ ํฌ๋ฆฌ๋ด์…œ์„ ๋‚จ๊ธฐ๊ณ  ์‹ถ์ง€ ์•Š์„๊ฒฝ์šฐ OAuth2 ๋กœ๊ทธ์ธ ์ธ์ฆ๋ฐฉ๋ฒ•์œผ๋กœ ๋กœ๊ทธ์ธ์„ ๊ตฌํ˜„ํ•˜๋ฉด๋œ๋‹ค. 1. Resource Owner๊ฐ€ ํด๋ผ์ด์–ธ..

BackEnd๐Ÿงต 2023.07.19

[Web]Cookie / Session

Cookie ์ฟ ํ‚ค๋Š” ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์ค‘์˜ ํ•˜๋‚˜์ด๋‹ค. HTTP์˜ ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ์ €์žฅํ• ์ˆ˜์—†๋‹ค. ์ฆ‰ ์›น์‚ฌ์ดํŠธ๋Š” ์‚ฌ์šฉ์ž๋ฅผ ๊ตฌ๋ณ„ํ• ์ˆ˜ ์—†๊ณ , ์‚ฌ์šฉ์ž๋Š” ๋งค๋ฒˆ ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ์ง„ํ–‰ํ•ด์•ผํ•œ๋‹ค.(HTTPํ”„๋กœํ† ์ฝœ์˜ Connectionless, Statelessํ•จ ๋•Œ๋ฌธ์—) ํ•˜์ง€๋งŒ ์ฟ ํ‚ค๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ๊ธฐ์–ตํ• ์ˆ˜์žˆ๊ฒŒ ํ•˜๊ณ  ์ด๊ฒƒ์ด ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ์ด๋‹ค. Cookie์˜ ์˜ต์…˜ 1. Domain ๋„๋ฉ”์ธ์€ www.naver.com๊ณผ ๊ณผ ๊ฐ™์ด ์„œ๋ฒ„์— ์ ‘์†ํ• ์ˆ˜์žˆ๋Š” ์ฃผ์†Œ๋ฅผ ๋งํ•œ๋‹ค. ๋งŒ์•ฝ ์š”์ฒญํ•ด์•ผํ•  URL์ด http://www.example.com:3000/users/login ์ด๋ผ๋ฉด ์—ฌ๊ธฐ์—์„œ ๋„๋ฉ”์ธ์€ example.com์ด ๋œ๋‹ค. ์ฟ ํ‚ค์˜ต์…˜์— ๋„๋ฉ”์ธ ์ •๋ณด๊ฐ€ ์กด์žฌํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ์ฟ ํ‚ค์˜ ๋„๋ฉ”์ธ ์˜ต์…˜๊ณผ ์„œ๋ฒ„..

BackEnd๐Ÿงต 2023.07.19

TIL - Servlet

ํ”„๋กœ์ ํŠธ ์„ธํŒ… ์Šคํ”„๋ง๋ถ€ํŠธ์—์„œ ํŒจํ‚ค์ง• ์„ ํƒ์‹œ์— Jar์™€ War๊ฐ€ ์žˆ๋‹ค. JAR( JAVA Archive) .jar ํ™•์žฅ์ž ํŒŒ์ผ์€ Class์™€ ๋ฆฌ์†Œ์Šค ์†์„ฑํŒŒ์ผ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ์•ก์„ธ์„œ๋ฆฌ ํŒŒ์ผ์ด ํฌํ•จ๋˜์–ด์žˆ๋‹ค. ์ฆ‰ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ์••์ถ•ํ•œ ํŒŒ์ผ๋กœ ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. JRE๋งŒ์œผ๋กœ๋„ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•˜๋‹ค. WAR(Web application Archive) .War ํŒŒ์ผ์€ servlet/ jsp ์ปจํ…Œ์ด๋„ˆ์— ์‚ฌ์šฉํ• ์ˆ˜์žˆ๋Š” ์›น์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์••์ถ•ํŒŒ์ผ ํฌ๋งท์ด๋‹ค. ์ด๋Š” ์›น๊ด€๋ จ ์ž์›๋งŒ ํฌํ•จํ•˜๊ณ  ์žˆ๊ณ , ์‚ฌ์šฉ์‹œ์— ์›น์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‰ฝ๊ฒŒ ๋ฐฐํฌํ•˜๊ณ  ์‚ฌ์šฉํ• ์ˆ˜์žˆ๋‹ค. ๋‹จ์ ์€ WARํŒŒ์ผ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด Tomcat, Weblogic, Websphere๋“ฑ์˜ Web Server ๋˜๋Š” WAS๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ํ˜„์žฌ ์ƒํ™ฉ์—์„œ๋Š” JSP๊ณต๋ถ€๋„ ํ•„์š”ํ•˜๋ฏ€๋กœ WAR๋ฅผ ์„ ํƒํ•œ๋‹ค. ์„œ..

BackEnd๐Ÿงต 2023.07.17

TIL - ๋นˆ ์Šค์ฝ”ํ”„

๋นˆ์Šค์ฝ”ํ”„๋ž€? ์Šค์ฝ”ํ”„๋Š” ๋ฒˆ์—ญ ๊ทธ๋Œ€๋กœ ๋นˆ์ด ์กด์žฌํ• ์ˆ˜์žˆ๋Š” ๋ฒ”์œ„๋ฅผ ๋œปํ•œ๋‹ค. ์Šคํ”„๋ง์—์„œ ์ง€์›ํ•˜๋Š” ์Šค์ฝ”ํ”„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1. ์‹ฑ๊ธ€ํ†ค : ๊ธฐ๋ณธ ์Šค์ฝ”ํ”„, ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์˜ ์‹œ์ž‘๊ณผ ์ข…๋ฃŒ๊นŒ์ง€ ์œ ์ง€๋˜๋Š” ๊ฐ€์žฅ ๋„“์€ ๋ฒ”์œ„์˜ ์Šค์ฝ”ํ”„. 2. ํ”„๋กœํ† ํƒ€์ž… : ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ๋นˆ์˜ ์ƒ์„ฑ๊ณผ ์˜์กด๊ด€๊ณ„์ฃผ์ž…๊นŒ์ง€๋งŒ ๊ด€์—ฌํ•˜๊ณ  ๋”๋Š” ๊ด€๋ฆฌํ•˜์ง€ ์•Š๋Š” ๋งค์šฐ ์งง์€ ๋ฒ”์œ„์˜ ์Šค์ฝ”ํ”„์ด๋‹ค. ์›น๊ด€๋ จ ์Šค์ฝ”ํ”„ 1. request : ์›น ์š”์ฒญ์ด ๋“ค์–ด์˜ค๊ณ  ๋‚˜๊ฐˆ๋•Œ ๊นŒ์ง€ ์œ ์ง€๋˜๋Š” ์Šค์ฝ”ํ”„ 2. session : ์›น ์„ธ์…˜์ด ์ƒ์„ฑ๋˜๊ณ  ์ข…๋ฃŒ๋ ๋•Œ ๊นŒ์ง€ ์œ ์ง€๋˜๋Š” ์Šค์ฝ”ํ”„ 3. application : ์›น์˜ ์„œ๋ธ”๋ฆฟ ์ปจํ…์Šค์™€ ๊ฐ™์€ ๋ฒ”์œ„๋กœ ์œ ์ง€๋˜๋Š” ์Šค์ฝ”ํ”„

BackEnd๐Ÿงต 2023.07.15

TIL - ์˜์กด๊ด€๊ณ„ ์ž๋™์ฃผ์ž…, ๋นˆ ์ƒ๋ช…์ฃผ๊ธฐ ์ฝœ๋ฐฑ

Lombok lombok์—์„œ @RequiredArgConstructor > ์ž๋™์œผ๋กœ ํ•„๋“œ์— final์ด ๋ถ™์€ ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑ์ž๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค. ํ˜„์—…์—์„œ๋„ ๊ฑฐ์˜ ๋กฌ๋ณต์„ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค. ์กฐํšŒ bean์ด 2๊ฐœ ์ด์ƒ์ผ๋•Œ @Autowired ๋งค์นญ ์ˆœ์„œ Autowired๋Š” ์ฒ˜์Œ์— ํƒ€์ž…๋งค์นญ์„ ์‹œ๋„ ๊ทธ๋ฆฌ๊ณ  ์—ฌ๋Ÿฌ ๋นˆ์ด ์žˆ์œผ๋ฉด ์ด๋ฆ„, ํŒŒ๋ผ๋ฏธํ„ฐ ์ด๋ฆ„์œผ๋กœ ๋นˆ์ด๋ฆ„์„ ์ถ”๊ฐ€ ๋งค์นญํ•œ๋‹ค. @Quilifier ์‚ฌ์šฉ ์ถ”๊ฐ€ ๊ตฌ๋ถ„์ž๋ฅผ ๋ถ™์—ฌ์ฃผ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๋Š”๊ฒƒ์€ ์•„๋‹˜. @Quilifier ๋ผ๋ฆฌ ๋งค์นญ๋œ๋‹ค, ๋นˆ์ด๋ฆ„์„ ๋งค์นญ์‹œํ‚จ๋‹ค. @Primary ์‚ฌ์šฉ @Primary๋ฅผ ๋„ฃ์–ด์ฃผ๋ฉด ์šฐ์„ ์ˆœ์œ„๋ฅผ ๋ถ€์—ฌํ•ด์„œ ๋‹ค๋ฅธ๊ฒƒ๋“ค์„ ๋ฌด์‹œํ•˜๊ณ  ์ตœ์ƒ์œ„๋กœ ์˜์กด๊ด€๊ณ„๊ฐ€ ์ฃผ์ž…๋œ๋‹ค. ๋ฉ”์ธ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ์—๋Š” @Primary๋ฅผ ์ง€์ •ํ•ด์„œ ์กฐํšŒํ•˜๊ณ , ์„œ๋ธŒ ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ์—๋Š” @Qualif..

BackEnd๐Ÿงต 2023.07.15

[Spring] DTO

DTO? DTO๋ž€? DTO(Data Transfer Object)์˜ ์•ฝ์ž๋กœ ๋งˆํ‹ดํŒŒ์šธ๋Ÿฌ๊ฐ€ ์†Œ๊ฐœํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„ํ‚คํ…์ฒ˜ ํŒจํ„ด์ค‘์˜ ํ•˜๋‚˜์ด๋‹ค. DTO๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ์šฉ๋„์˜ ๊ฐ์ฒด์ด๋‹ค. DTO๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  ์ฝ”๋“œ์˜ ๊ฐ„๊ฒฐ์„ฑ DTO๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์ฝ”๋“œ๊ฐ€ ๊ฐ„๊ฒฐํ•ด์ง„๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํšŒ์›์ •๋ณด๋ฅผ @RequestParam์„ ํ†ตํ•ด ์ด๋ฉ”์ผ, ์ด๋ฆ„, ์ฃผ์†Œ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ๋ฐ›๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ณด์ž. ๊ทธ๋Ÿผ ์ปจํŠธ๋กค๋Ÿฌ์˜ ํ•ด๋‹น ๋ฉ”์„œ๋“œ์— ๋ฐ›์œผ๋ ค๋Š” ์ •๋ณด์˜ ์ˆซ์ž๋งŒํผ @RequestParam์ด ํ•„์š”ํ• ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ Dto๋ฅผ ์ ์šฉํ•˜๊ฒŒ๋œ๋‹ค๋ฉด? //DTO ์ ์šฉ์ „ @PostMapping public ResponseEntity postMember(@RequestParam("email") String email, @RequestParam("name"..

BackEnd๐Ÿงต 2023.07.09

[Spring] Controller

Spring MVC์˜ ๋™์ž‘๋ฐฉ์‹ 1. ํด๋ผ์ด์–ธํŠธ(์›น๋ธŒ๋ผ์šฐ์ €)์—์„œ ์š”์ฒญ์„ ์ „์†กํ•˜๋ฉด DispatcherServlet์ด๋ผ๋Š” ํด๋ž˜์Šค์—์š”์ฒญ์ด ์ „๋‹ฌ๋œ๋‹ค. 2. - ์€ ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  Controller์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰์„ HandlerMapping ์ธํ„ฐํŽ˜์ด์Šค์—๊ฒŒ ์š”์ฒญํ•œ๋‹ค. 3. HandlerMapping์€ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ๊ณผ ๋งคํ•‘๋˜๋Š” ํ•ธ๋“ค๋Ÿฌ ๊ฐ์ฒด๋ฅผ ๋‹ค์‹œ DispatcherServlet์—๊ฒŒ ๋ฆฌํ„ดํ•ด์ค€๋‹ค. 4. ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ฐพ์•˜๊ณ  ์‹ค์ œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  Handler ๋ฉ”์„œ๋“œ๋ฅผ ์ฐพ์•„์„œ ํ˜ธ์ถœํ•œ๋‹ค. HandlerAdapter์—๊ฒŒ ์ด ์ž‘์—…์„ ์œ„์ž„ํ•œ๋‹ค. 5. HandlerAdapter๋Š” DispatcherServlet์œผ๋กœ๋ถ€ํ„ฐ ์ „๋‹ฌ๋ฐ›์€ Controller ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ด๋‹น Controller์˜ Handler๋ฉ”์„œ๋“œ๋ฅผ ..

BackEnd๐Ÿงต 2023.07.07

TIL - JVM(Java Virtual Machine)

๐Ÿ‘€Today... ์‹œ์ž‘ํ•˜๊ธฐ์ „์— ์›ƒ๊ณ  ์‹ถ์–ด์„œ ์›ƒ๊ธด์งค ์ฐพ๋‹ค๊ฐ€ ๊ฐ€์ ธ์™”๋Š”๋ฐ ์•„์ง„์งœ ์นดํŽ˜์—์„œ ์†Œ๋ฆฌ๋‚ด์„œ ์›ƒ์—ˆ๋‹คใ…‹ใ…‹ใ…‹ ์ทจํ–ฅ์ €๊ฒฉ ๊ฐœ๊ทธ โ˜•์˜ค๋Š˜์˜ TIL(Today I Learn) JVM JVM์€ ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œํ‚ค๋Š” ๋„๊ตฌ์ด๋‹ค. .java ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผ ํ•˜์—ฌ .class ๋ฐ”์ดํŠธ ์ฝ”๋“œ๋กœ ๋งŒ๋“ค๋ฉด ์ด์ฝ”๋“œ๊ฐ€ JVMํ™˜๊ฒฝ์—์„œ ์‹คํ–‰๋œ๋‹ค. JVM์€ JRE(Java Runtime Environment)์— ํฌํ•จ๋˜์–ด์žˆ๋‹ค. ์ฆ‰, ์ž๋ฐ”๋กœ ์ž‘์„ฑํ•œ ์†Œ์Šค์ฝ”๋“œ๋ฅผ ํ•ด์„ํ•˜์—ฌ ์‹คํ–‰ํ•˜๋Š” ๋ณ„๋„์˜ ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค. ์ž๋ฐ”๋Š” "์šด์˜์ฒด์ œ๋กœ ๋ถ€ํ„ฐ ๋…๋ฆฝ์ "์ด๋ผ๊ณ  ๋งํ•˜๋Š”๋ฐ ์ด๊ฒƒ์ด JVM์„ ํ†ตํ•ด ๊ตฌํ˜„๋˜๋Š”๊ฒƒ์ด๋‹ค. ํ•˜๋‚˜์˜ ๋ฐ”์ดํŠธ์ฝ”๋“œ๋กœ ๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ ๋™์ž‘์ด ๊ฐ€๋Šฅํ•ด์ง„๋‹ค. ์ฆ‰, ์œ„ ๊ทธ๋ฆผ์—์„œ ๋ณผ์ˆ˜์žˆ๋“ฏ์ด ์ž๋ฐ”๋Š” ํ”Œ๋žซํผ์—๋Š” ์ข…์†์ ์ด์ง€ ์•Š์ง€๋งŒ, JVM์€ ํ”Œ๋žซํผ์— ์ข…์†์ ์ด๋‹ค. ๋ฆฌ๋ˆ…์Šค์˜ J..

BackEnd๐Ÿงต 2023.05.15
๋ฐ˜์‘ํ˜•