Back-end/Spring

[Spring] POJO λž€ 무엇인가?

🧐 POJOλž€?

<μœ„ν‚€λ°±κ³Ό>

Plain Old Java Object, κ°„λ‹¨νžˆ POJOλŠ” 말 κ·ΈλŒ€λ‘œ 해석을 ν•˜λ©΄ 였래된 λ°©μ‹μ˜ κ°„λ‹¨ν•œ μžλ°” μ˜€λΈŒμ νŠΈλΌλŠ” λ§λ‘œμ„œ Java EE λ“±μ˜ μ€‘λŸ‰ ν”„λ ˆμž„μ›Œν¬λ“€μ„ μ‚¬μš©ν•˜κ²Œ λ˜λ©΄μ„œ ν•΄λ‹Ή ν”„λ ˆμž„μ›Œν¬μ— μ’…μ†λœ "무거운" 객체λ₯Ό λ§Œλ“€κ²Œ 된 것에 λ°˜λ°œν•΄μ„œ μ‚¬μš©λ˜κ²Œ 된 μš©μ–΄μ΄λ‹€. 2000λ…„ 9월에 λ§ˆν‹΄ 파울러, 레베카 파슨, 쑰쉬 λ§₯킨지 등이 μ‚¬μš©ν•˜κΈ° μ‹œμž‘ν•œ μš©μ–΄λ‘œμ„œ λ§ˆν‹΄ νŒŒμšΈλŸ¬λŠ” λ‹€μŒκ³Ό 같이 κ·Έ 기원을 밝히고 μžˆλ‹€. [1]

 

  • Plan Old Java Object - 였래된 방식 λ‹¨μˆœ μžλ°” 객체
  • getter/setterλ₯Ό 가진 λ‹¨μˆœν•œ μžλ°” 였브젝트

πŸ€” 개발된 이유:

EJB의 객체지ν–₯적으둜 μž₯점인 νŠΉμ„±λ“€μ„ 가져와 개발.

(EJBλž€ μžλ°” κ°œλ°œμ— μžˆμ–΄ λ‘œμš°κ°œλ°œμ— 신경을 μ•ˆ μ“°κ³  μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‰½κ²Œ λ§Œλ“€μ–΄ μ€€ 기술

ν•˜μ§€λ§Œ, EJBλŠ” 객체지ν–₯성을 κ°μ†Œμ‹œν‚€λŠ” 단점이 μžˆμ—ˆλ‹€.)

 

μ΄λ ‡κ²Œ EJB의 μ‚¬μš©κ³Ό ν”„λ‘œκ·Έλž¨μ˜ 규λͺ¨μ˜ μ¦κ°€λ‘œ μžλ°” μ–Έμ–΄λ‘œ 개발이 λ˜μ–΄μ§€λŠ” κ²ƒλ“€μ˜ μ½”λ“œμ˜ 양은 λ§Žμ•„μ§€κ³ , λ³΅μž‘ν•΄μ Έ 점점 객체지ν–₯성을 μžƒμ–΄κ°”λ‹€.

 

κ·Έλž˜μ„œ κ°œλ°œμžλ“€μ€ μ˜›λ‚  μˆœμˆ˜ν•œ 객체지ν–₯성이 컸던 μ‹œμ ˆλ‘œ λŒμ•„κ°€μžλŠ” μ·¨μ§€λ‘œ POJOλ₯Ό κ°œλ°œν•˜κ²Œ λ˜μ—ˆλ‹€.

πŸ€” POJO의 νŠΉμ§•

  • 클래슀 상속을 κ°•μ œν•˜μ§€ μ•ŠλŠ”λ‹€.
  • μΈν„°νŽ˜μ΄μŠ€ κ΅¬ν˜„μ„ κ°•μ œν•˜μ§€ μ•ŠλŠ”λ‹€.
  • μ• λ…Έν…Œμ΄μ…˜(@) μ‚¬μš©μ„ κ°•μ œν•˜μ§€ μ•ŠλŠ”λ‹€.

πŸ€” POJO ν”„λ ˆμž„μ›Œν¬

μŠ€ν”„λ§μ—μ„œ μ—”ν„°ν”„λΌμ΄μ¦ˆ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ κ°œλ°œμ„ λͺ©μ μœΌλ‘œ ν•˜λŠ” ν”„λ ˆμž„μ›Œν¬

 

 

 

 

 

 

λ°˜μ‘ν˜•