๋ฐ˜์‘ํ˜•
Notice
Recent Posts
Recent Comments
Link
ยซ   2024/05   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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
Archives
Today
Total
05-05 21:18
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กJava Spring/์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ธฐ๋ณธํŽธ (63)

์žฌ๋ƒฅ์ด๐Ÿ˜ป

[Java Spring] 2-59. ์›น ์Šค์ฝ”ํ”„

[Java Spring] 2-59. ์›น ์Šค์ฝ”ํ”„ ์ง€๊ธˆ๊นŒ์ง€ ์‹ฑ๊ธ€ํ†ค๊ณผ ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„๋ฅผ ํ•™์Šตํ–ˆ๋‹ค. ์‹ฑ๊ธ€ํ†ค์€ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์˜ ์‹œ์ž‘๊ณผ ๋๊นŒ์ง€ ํ•จ๊ป˜ํ•˜๋Š” ๋งค์šฐ ๊ธด ์Šค์ฝ”ํ”„์ด๊ณ , ํ”„๋กœํ† ํƒ€์ž…์€ ์ƒ์„ฑ๊ณผ ์˜์กด๊ด€๊ณ„ ์ฃผ์ž…, ๊ทธ๋ฆฌ๊ณ  ์ดˆ๊ธฐํ™”๊นŒ์ง€๋งŒ ์ง„ํ–‰ํ•˜๋Š” ํŠน๋ณ„ํ•œ ์Šค์ฝ”ํ”„์ด๋‹ค. ์ด๋ฒˆ์—๋Š” ์›น ์Šค์ฝ”ํ”„์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž ์›น ์Šค์ฝ”ํ”„์˜ ํŠน์ง• ์›น ์Šค์ฝ”ํ”„๋Š” ์›น ํ™˜๊ฒฝ์—์„œ๋งŒ ๋™์ž‘ํ•œ๋‹ค. ์›น ์Šค์ฝ”ํ”„๋Š” ํ”„๋กœํ† ํƒ€์ž…๊ณผ ๋‹ค๋ฅด๊ฒŒ ์Šคํ”„๋ง์ด ํ•ด๋‹น ์Šค์ฝ”ํ”„์˜ ์ข…๋ฃŒ์‹œ์ ๊นŒ์ง€ ๊ด€๋ฆฌํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์ข…๋ฃŒ ๋ฉ”์„œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋œ ๋‹ค. ์›น ์Šค์ฝ”ํ”„ ์ข…๋ฅ˜ request: HTTP ์š”์ฒญ ํ•˜๋‚˜๊ฐ€ ๋“ค์–ด์˜ค๊ณ  ๋‚˜๊ฐˆ ๋•Œ ๊นŒ์ง€ ์œ ์ง€๋˜๋Š” ์Šค์ฝ”ํ”„, ๊ฐ๊ฐ์˜ HTTP ์š”์ฒญ๋งˆ๋‹ค ๋ณ„๋„์˜ ๋นˆ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ƒ์„ฑ๋˜๊ณ , ๊ด€๋ฆฌ๋œ๋‹ค. session: HTTP Session๊ณผ ๋™์ผํ•œ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๊ฐ€์ง€๋Š” ์Šค์ฝ”ํ”„ application..

[Java Spring] 2-58. ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„ - ์‹ฑ๊ธ€ํ†ค ๋นˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ์‹œ Provider๋กœ ๋ฌธ์ œ ํ•ด๊ฒฐ

[Java Spring] 2-58. ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„ - ์‹ฑ๊ธ€ํ†ค ๋นˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ์‹œ Provider๋กœ ๋ฌธ์ œ ํ•ด๊ฒฐ ์‹ฑ๊ธ€ํ†ค ๋นˆ๊ณผ ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ๋•Œ, ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์‚ฌ์šฉํ•  ๋•Œ ๋งˆ๋‹ค ํ•ญ์ƒ ์ƒˆ๋กœ์šด ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์„๊นŒ? ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์š”์ฒญ ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ ์‹ฑ๊ธ€ํ†ค ๋นˆ์ด ํ”„๋กœํ† ํƒ€์ž…์„ ์‚ฌ์šฉํ•  ๋•Œ ๋งˆ๋‹ค ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์ƒˆ๋กœ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด๋‹ค. public class PrototypeProviderTest { @Test void providerTest() { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(ClientBean.class, PrototypeBean.class); ClientBean cl..

[Java Spring] 2-57. ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„ - ์‹ฑ๊ธ€ํ†ค ๋นˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ์‹œ ๋ฌธ์ œ์ 

[Java Spring] 2-57. ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„ - ์‹ฑ๊ธ€ํ†ค ๋นˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ์‹œ ๋ฌธ์ œ์  ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„์˜ ๋นˆ์„ ์š”์ฒญํ•˜๋ฉด ํ•ญ์ƒ ์ƒˆ๋กœ์šด ๊ฐ์ฒด ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์„œ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์‹ฑ๊ธ€ ํ†ค ๋นˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์˜๋„ํ•œ ๋Œ€๋กœ ์ž˜ ๋™์ž‘ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ฃผ์˜ํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ฆผ๊ณผ ์ฝ”๋“œ๋กœ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค. ๋จผ์ € ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ์ง์ ‘ ์š”์ฒญํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ๋ณด์ž. ํ”„๋กœํ† ํƒ€์ž… ๋นˆ ์ง์ ‘ ์š”์ฒญ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ํ”„๋กœํ† ํƒ€์ž… ๋นˆ ์ง์ ‘ ์š”์ฒญ1 1. ํด๋ผ์ด์–ธํŠธA๋Š” ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ์š”์ฒญํ•œ๋‹ค. 2. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ์ƒˆ๋กœ ์ƒ์„ฑํ•ด์„œ ๋ฐ˜ํ™˜(x01)ํ•œ๋‹ค. ํ•ด๋‹น ๋นˆ์˜ count ํ•„๋“œ ๊ฐ’์€ 0์ด๋‹ค. 3. ํด๋ผ์ด์–ธํŠธ๋Š” ์กฐํšŒํ•œ ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์— addCount() ๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด์„œ count ํ•„๋“œ..

[Java Spring] 2-56. ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„

[Java Spring] 2-56. ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„ ์‹ฑ๊ธ€ํ†ค ์Šค์ฝ”ํ”„์˜ ๋นˆ์„ ์กฐํšŒํ•˜๋ฉด ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ํ•ญ์ƒ ๊ฐ™์€ ์ธ์Šคํ„ด์Šค์˜ ์Šคํ”„๋ง ๋นˆ์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋ฐ˜๋ฉด์— ํ”„๋กœํ† ํƒ€์ž… ์Šค ์ฝ”ํ”„๋ฅผ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์กฐํšŒํ•˜๋ฉด ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ํ•ญ์ƒ ์ƒˆ๋กœ์šด ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์„œ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์‹ฑ๊ธ€ํ†ค ๋นˆ ์š”์ฒญ ์‹ฑ๊ธ€ํ†ค ์Šค์ฝ”ํ”„์˜ ๋นˆ์„ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์š”์ฒญํ•œ๋‹ค. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ๋ณธ์ธ์ด ๊ด€๋ฆฌํ•˜๋Š” ์Šคํ”„๋ง ๋นˆ์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ดํ›„์— ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ๊ฐ™์€ ์š”์ฒญ์ด ์™€๋„ ๊ฐ™์€ ๊ฐ์ฒด ์ธ์Šคํ„ด์Šค์˜ ์Šคํ”„๋ง ๋นˆ์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ํ”„๋กœํ† ํƒ€์ž… ๋นˆ ์š”์ฒญ1 ํ”„๋กœํ† ํƒ€์ž… ์Šค์ฝ”ํ”„์˜ ๋นˆ์„ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์š”์ฒญํ•œ๋‹ค. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ์ด ์‹œ์ ์— ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ์ƒ์„ฑํ•˜๊ณ , ํ•„์š”ํ•œ ์˜์กด๊ด€๊ณ„๋ฅผ ์ฃผ์ž…ํ•œ๋‹ค. ํ”„๋กœํ† ํƒ€์ž… ๋นˆ ์š”์ฒญ2 3. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋Š” ์ƒ์„ฑํ•œ ํ”„๋กœํ† ํƒ€์ž… ๋นˆ์„ ํด๋ผ์ด์–ธํŠธ์—..

[Java Spring] 2-55. ๋นˆ ์Šค์ฝ”ํ”„๋ž€?

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