๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Legacy

2022.1.17์˜ ๊ธฐ๋ก

by GroovyArea 2022. 1. 17.

โ–ถ ๋‚˜๋Š” ์–ด๋–ค ์‚ฌ๋žŒ(๋ชฉํ‘œ)์ด ๋˜๊ณ  ์‹ถ์€๊ฐ€

> ๋‚ด ๊ฐœ์ธ์ ์ธ ์ทจ๋ฏธ๋ฅผ ์ฆ๊ธธ ์—ฌ์œ (๋ˆ, ์‹œ๊ฐ„)๋ฅผ ๊ฐ€์ง€๊ณ  ์‹ถ๋‹ค.(40์„ธ ๋ถ€ํ„ฐ ์ผ๊ณผ ๋ณ‘ํ–‰ํ•˜์—ฌ ์–ด๋А์ •๋„ ์ทจ๋ฏธ๋ฅผ ์ฆ๊ธฐ๋ฉฐ ๋‚˜๋ฅผ ์ฑ™๊ธฐ๋Š” ์‚ถ์„ ์‚ด๊ณ  ์‹ถ๋‹ค)

 


โ–ถ ์˜ค๋Š˜ ์‹คํ˜„ ๊ฐ€๋Šฅํ•œ ์„ธ๋ถ€ ๋ชฉํ‘œ

=> ์„ธ๋ฏธํ”„๋กœ์ ํŠธ ๊ด€๋ จ

1) 2์ฐจ ์ˆ˜์ • pdf ์ œ์ถœ

2) ์ˆ˜์ • ์‚ฌํ•ญ ์žˆ์„ ์‹œ ๋””์ฝ”ํšŒ์˜ ๋งˆ๋ จ

1. ํŒ€์› ๋„ํ•ฉ ๋ชฉํ‘œ ์ •ํ•ด์„œ ํด๋” ์ •๋ฆฌ 2. ์ˆ˜์ • ์‚ฌํ•ญ ๊ณต์œ  

 

=> ๊ณต๋ถ€ ๊ด€๋ จ

1) ํ™•์‹คํžˆ ๋ณต์Šต(์ˆ˜์ •ํ•˜์—ฌ ์•ˆ ๋ณด๊ณ  ๋งŒ๋“ค์–ด๋ณด๊ธฐ)

 

=> ํŒŒ์ด๋„ ํ”„๋กœ์ ํŠธ ๊ด€๋ จ

1) ๋‚จ๊ถ์„ฑ ๊ฐ•์‚ฌ ํŒŒ์ด๋„ ์˜์ƒ 1๊ฐœ ๋ณด๋ฉฐ ๋…ธ์…˜์— ์ •๋ฆฌํ•˜๊ธฐ (์‹œ๊ฐ„๋˜๋ฉด ํ•˜์ž)

 


โ–ถ ๊ณต๋ถ€ ๋‚ด์šฉ

๋‚ด๊ฐ€ ๋งŒ๋“  ๊ณต์ง€์‚ฌํ•ญ

useBean

  1. useBean ํƒœ๊ทธ : ๋‚ด์žฅ๊ฐ์ฒด์— ์ €์žฅ๋œ ์†์„ฑ๊ฐ’์„ ์ธ์Šคํ„ด์Šค๋กœ ๋ฐ˜ํ™˜๋ฐ›์•„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋‚ด์žฅ๊ฐ์ฒด์˜ ์†์„ฑ๊ฐ’์œผ๋กœ ์ €์žฅํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ํƒœ๊ทธ - ์ธ์Šคํ„ด์Šค ์ œ๊ณต
  • id ์†์„ฑ (ํ•„์ˆ˜) : ๋ฐ˜ํ™˜(์ƒ์„ฑ)๋˜๋Š” ์ธ์Šคํ„ด์Šค๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ์ด๋ฆ„(๋ณ€์ˆ˜๋ช…)์„ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ • ⇒ ๋‚ด์žฅ๊ฐ์ฒด์— ์ €์žฅ๋œ ์†์„ฑ๊ฐ’์˜ ์†์„ฑ๋ช…์„ ํ‘œํ˜„
  • class ์†์„ฑ (ํ•„์ˆ˜) : ๋ฐ˜ํ™˜(์ƒ์„ฑ)๋˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ์ž๋ฃŒํ˜•(ํด๋ž˜์Šค)๋ฅผ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ •
  • scope ์†์„ฑ (์„ ํƒ) : page(๊ธฐ๋ณธ), request, session, application ์ค‘ ํ•˜๋‚˜๋ฅผ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ •
  1. setProperty ํƒœ๊ทธ : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋œ ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ํƒœ๊ทธ ⇒ JavaBean ํด๋ž˜์Šค์˜ Setter ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ช…๋ น๊ณผ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณต
  • name ์†์„ฑ (ํ•„์ˆ˜) : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ์‹๋ณ„์ž (id ์†์„ฑ๊ฐ’)์„ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ •
  • property ์†์„ฑ (ํ•„์ˆ˜) : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๋ช…์„ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ • ⇒ ํ•„๋“œ๋ช…์„ ์ด์šฉํ•˜์—ฌ ์„ ์–ธ๋œ Setter ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๊ฐ’ ๋ณ€๊ฒฝ
  • value ์†์„ฑ (์„ ํƒ) : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๊ฐ’์„ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ • - ์ด๊ฑธ ์ƒ๋žตํ•˜๋ฉด JSP ๋ฌธ์„œ ์š”์ฒญ ์‹œ ์ „๋‹ฌ๋œ ๊ฐ’์„ ๋ฐ˜ํ™˜๋ฐ›์•„ ํ•„๋“œ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ ⇒ ์ „๋‹ฌ๋˜๋Š” ์ด๋ฆ„ (์ž…๋ ฅํƒœ๊ทธ์˜ name ์†์„ฑ๊ฐ’)๊ณผ property ์†์„ฑ๊ฐ’(Java ํด๋ž˜์Šค์˜ ํ•„๋“œ๋ช…)์ด ๋™์ผํ•ด์•ผ๋งŒ ์ „๋‹ฌ๊ฐ’์„ ๋ฐ˜ํ™˜๋ฐ›์•„ ํ•„๋“œ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ
  • property ์†์„ฑ๊ฐ’์„ [*]๋กœ ์„ค์ •ํ•œ ๊ฒฝ์šฐ ๋ชจ๋“  ์ „๋‹ฌ๊ฐ’์„ ๋ฐ˜ํ™˜๋ฐ›์•„ ํ•„๋“œ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ ⇒ ์ „๋‹ฌ๋˜๋Š” ์ด๋ฆ„๊ณผ ํ•„๋“œ๋ช…์ด ๋™์ผํ•ด์•ผ๋งŒ ์ „๋‹ฌ๊ฐ’์„ ์ „๋‹ฌ๋ฐ›์•„ ํ•„๋“œ๊ฐ’ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ
  1. getProperty ํƒœ๊ทธ : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋œ ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ํƒœ๊ณ  ⇒ JavaBean ํด๋ž˜์Šค์˜ Getter ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ช…๋ น๊ณผ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณต
  • name ์†์„ฑ (ํ•„์ˆ˜) : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ์‹๋ณ„์ž (id ์†์„ฑ๊ฐ’)์„ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ •
  • property ์†์„ฑ(ํ•„์ˆ˜) : useBean ํƒœ๊ทธ๋กœ ์ œ๊ณต๋˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๋ช…์„ ์†์„ฑ๊ฐ’์œผ๋กœ ์„ค์ • => ํ•„๋“œ๋ช…์„ ์ด์šฉํ•˜์—ฌ ์„ ์–ธ๋œ Getter ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ธ์Šคํ„ด์Šค์˜ ํ•„๋“œ๊ฐ’ ๋ฐ˜ํ™˜

DAO

  • ์„œ๋ธ”๋ฆฟ์—์„œ ๋งŒ๋“  JdbcDAO (JNDI ๋ฐฉ์‹์œผ๋กœ context.xml์—์„œ์„œ ์–ป์€ Connection ๊ฐ์ฒด ์ƒ์„ฑ์˜ ์ •๋ณด ์ž์› ์ด์šฉ) ๋ฅผ ์ƒ์†๋ฐ›์•„ DAO ์ž‘์„ฑ ํ›„ ์‹ฑ๊ธ€ํ†ค ๋””์ž์ธ ์ ์šฉ
  • DB์—์„œ PK๋Š” ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. (๊ด€๊ณ„ํ˜• DB์—์„œ)

⇒ ์ค‘๋ณต๋œ ์ฝ”๋“œ๋Š” ์ตœ๋Œ€ํ•œ ํ”ผํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค.

 

DB

  • delete๋ฅผ ํ•˜์ง€๋ง์ž. (ํ…Œ์ด๋ธ”๋ผ๋ฆฌ ๊ด€๊ณ„๋ฅผ ๋งบ๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค)
  • ์‚ญ์ œ๋œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ฒŒ ํ•˜๋Š” ๊ฒƒ.
pstmt = con.prepareStatement(sql);

=> ์š” ์ž์‹๋•Œ๋ฌธ์— ๊ณจ๋จธ๋ฆด ์•“์•˜๋‹ค. ์™„๋ฒฝํžˆ ์™ธ์šธ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•ด๋ฒ„๋ฆฌ๊ธฐ (์ด๊ฑฐ ์•ˆํ•ด์„œ ๊ณ„์† nullPointer์˜ˆ์™ธ ๋œธ..)


 

โ–ถ ์„ธ๋ฏธ ํŒ€ํ”„๋กœ์ ํŠธ

 

> DB ํ”ผ๋“œ๋ฐฑ ํšŒ์˜

=> ๋บ„๊ฑฐ ๋นผ๊ณ  ๋ฐฐ์†ก ํ…Œ์ด๋ธ” ๋‹ค์‹œ ์ ๊ฒ€

 

> ํŒŒ์ผ ๋ถ„์„ - ์ดํ‹€์— ํ•œ๋ฒˆ์”ฉ 30๋ถ„~1์‹œ๊ฐ„ ๋””์ฝ”๋ชจ์ž„ 

 

< SQL ์ •์˜์„œ ์ฃผ๋ง ๋ชจ์ž„


โ–ถ ์Šคํ„ฐ๋”” ๋‚ด์šฉ&๊ฒฐ๊ณผ

> ์„ธ์…˜์œผ๋กœ ์‚ฌ์šฉ์ž ์ž…๋ ฅํผ์—์„œ ์‚ฌ์šฉ์ž ํŽธ์˜์„ฑ ์ œ๊ฑฐ ๊ธฐ๋Šฅ. => post ๋ฐฉ์‹์œผ๋กœ ์ž…๋ ฅ๋ฐ›์€ ๊ฐ ์†์„ฑ๋“ค์„ ๊ฐ์ฒด ์†์„ฑ์œผ๋กœ ๋„ฃ์–ด์ฃผ๊ณ  ๊ทธ ๊ฐ์ฒด๋ฅผ ์„ธ์…˜์˜ ์†์„ฑ๊ฐ’์œผ๋กœ ๋„˜๊ฒจ์ค€๋‹ค. ๊ทธ ์„ธ์…˜์˜ ์†์„ฑ๊ฐ’์„ ๋ฐ›์•„ getter๋กœ value ์†์„ฑ์— ์ถ”๊ฐ€ํ•˜๋ฉด ๋~

> ๊ทธ ๊ณผ์ •์—์„œ if(???!=null) ์€ nullPointerException ๋ฐฉ์ง€

๋ฐ˜์‘ํ˜•

'Legacy' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

2022.1.19์˜ ๊ธฐ๋ก  (0) 2022.01.19
2022.1.18์˜ ๊ธฐ๋ก  (0) 2022.01.18
2022.1.14์˜ ๊ธฐ๋ก  (0) 2022.01.14
2022.1.13์˜ ๊ธฐ๋ก  (0) 2022.01.13
2022. 1 . 11 ์˜ ๊ธฐ๋ก  (0) 2022.01.11