😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[Nest JS 둜 CRUD κ²Œμ‹œνŒ λ§Œλ“€κΈ°] (2) Nest JS λͺ¨λ“ˆμ΄λž€ & Controller & Service λ³Έλ¬Έ

πŸ‘©‍πŸ’» λ°±μ—”λ“œ(Back-End)/Nest js

[Nest JS 둜 CRUD κ²Œμ‹œνŒ λ§Œλ“€κΈ°] (2) Nest JS λͺ¨λ“ˆμ΄λž€ & Controller & Service

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 6. 1. 00:39
728x90
λ°˜μ‘ν˜•

<λ³Έ λΈ”λ‘œκ·ΈλŠ” John Ahn μ˜ 유튜브λ₯Ό μ°Έκ³ ν•΄μ„œ κ³΅λΆ€ν•˜λ©° μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€ :-)>

=> λ”°λΌν•˜λ©΄μ„œ λ°°μš°λŠ” NestJS

 

🧸 Nest JS λͺ¨λ“ˆμ΄λž€ 

: @Module () λ°μ½”λ ˆμ΄ν„°λ‘œ 주석이 달린 클래슀

: Nest κ°€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ ꡬ쑰λ₯Ό κ΅¬μ„±ν•˜λŠ”λ° μ‚¬μš©ν•˜λŠ” 메타 데이터λ₯Ό 제곡

: λͺ¨λ“ˆμ€ λ°€μ ‘ν•˜κ²Œ κ΄€λ ¨λœ κΈ°λŠ₯ μ§‘ν•©μœΌλ‘œ ꡬ성 μš”μ†Œλ₯Ό ꡬ성함 (κΈ°λŠ₯λ³„λ‘œ λ§Œλ“€κΈ°)

: 같은 κΈ°λŠ₯에 ν•΄λ‹Ήν•˜λŠ” 것듀은 ν•˜λ‚˜μ˜ λͺ¨λ“ˆ 폴더 μ•ˆμ— λ„£μ–΄μ„œ μ‚¬μš©ν•¨

: λͺ¨λ“ˆμ€ 기본적으둜 μ‹±κΈ€ ν†€μœΌλ‘œ, μ—¬λŸ¬ λͺ¨λ“ˆ 간에 μ‰½κ²Œ κ³΅κΈ‰μžμ˜ λ™μΌν•œ μΈμŠ€ν„΄μŠ€ κ³΅μœ ν•¨

 

πŸŽ€ λͺ¨λ“ˆ μƒμ„±ν•˜κΈ°

nest g module λͺ¨λ“ˆμ΄λ¦„

 

🧸 Nest JS Controller λž€

: λ“€μ–΄μ˜€λŠ” μš”μ²­μ„ μ²˜λ¦¬ν•˜κ³  ν΄λΌμ΄μ–ΈνŠΈμ— 응닡을 λ°˜ν™˜ν•¨

: @Controller λ°μ½”λ ˆμ΄ν„°λ‘œ 클래슀λ₯Ό λ°μ½”λ ˆμ΄μ…˜ν•˜μ—¬ μ •μ˜ν•¨

: λ°μ½”λ ˆμ΄ν„°λŠ” 인자λ₯Ό Controller 에 μ˜ν•΄μ„œ μ²˜λ¦¬λ˜λŠ” "경둜"둜 λ°›λŠ”λ‹€

 

πŸŽ€ Handler

: @Get, @Post, @Delete λ“±κ³Ό 같은 λ°μ½”λ ˆμ΄ν„°λ‘œ μž₯식 된 컨트둀러 클래슀 λ‚΄μ˜ λ‹¨μˆœν•œ λ©”μ„œλ“œ

 

πŸŽ€ Controller μƒμ„±ν•˜κΈ°

nest g controller boards --no-spec

// nest : using netcli
// g : generate
// controller : controller schematic
// boards : name of the schematic
// --no-spec : ν…ŒμŠ€νŠΈλ₯Ό μœ„ν•œ μ†ŒμŠ€ μ½”λ“œ 생성 X

 

🧸 Nest JS Service λž€

: λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ 데이터λ₯Ό κ°€μ Έμ˜€κ±°λ‚˜ λ°μ΄ν„°λ² μ΄μŠ€ μ•ˆμ— κ²Œμ‹œνŒ 생성할 λ•Œ κ·Έ μƒμ„±ν•œ κ²Œμ‹œνŒ 정보λ₯Ό λ„£μ–΄μ£ΌλŠ” λ™μ˜ λ‘œμ§μ„ 처리

: injectable λ°μ½”λ ˆμ΄ν„°κ°€ 있으며, Nest JS λŠ” 이것을 μ΄μš©ν•΄μ„œ λ‹€λ₯Έ μ»΄ν¬λ„ŒνŠΈμ—μ„œ 이 μ„œλΉ„μŠ€λ₯Ό μ‚¬μš©ν•  수 있게 λ§Œλ“€μ–΄μ€Œ

: CLI 둜 Service 생성 μ‹œμ—λŠ” module 에도 μžλ™μœΌλ‘œ Service κ°€ 좔가됨 

nest g service boards --no-spec

// nest : using netcli
// g : generate
// service : service schematic
// boards : name of the schematic
// --no-spec : ν…ŒμŠ€νŠΈλ₯Ό μœ„ν•œ μ†ŒμŠ€ μ½”λ“œ 생성 X

728x90
λ°˜μ‘ν˜•
Comments