OPEN HYPER STEP
← 목록으로 (MongoDB)
MONGODB · 23 / 34
mongodb
CHAPTER 23 / 34
읽기 약 2
FUNCTION

pre/post Hooks


핵심 개념

미들웨어 훅으로 저장/삭제 전후에 자동으로 실행될 로직을 정의합니다.

코드 분석
MONGODB📋 코드 (1줄)
HOOKS// 저장 전 비밀번호 해싱userSchema.pre('save', async function() {  if (this.isModified('password')) {    this.password = await bcrypt.hash(this.password, 10)  }})// 삭제 후 로그userSchema.post('deleteOne', function() {  console.log('사용자 삭제됨')})

AI 프롬프트
🤖 AI에게 잘 물어보는 법 — 모델·전략별 프롬프트
Claude

무료: Sonnet 4.6 / Pro $20/mo: Opus 4.6

이 MongoDB 'pre/post Hooks' 쿼리에서
인덱싱 누락·풀스캔·N+1 위험을
분석하고 최적화 쿼리로 개선해줘.
ChatGPT

무료: GPT-5.5 / Plus $20/mo: GPT-5.5 Pro

'pre/post Hooks'를 활용한 실전 데이터 모델을
임베딩 vs 레퍼런스 비교와 함께
복사 가능한 스키마 코드로 만들어줘.
Gemini

무료: 2.5 Flash / Pro $19.99/mo: 3.1 Pro

이 MongoDB 'pre/post Hooks' 쿼리 패턴 전체를 분석하고
인덱스 최적화·집계 파이프라인 개선·샤딩 전략을
우선순위로 정리해줘.
Grok

무료: Grok 4.1 / SuperGrok $30/mo

MongoDB 'pre/post Hooks' vs PostgreSQL JSONB의 동일 기능 구현을
비용·성능·운영 난이도로
솔직히 비교해줘.

⭐ 이것만 기억하세요
pre/post Hooks 이 3가지만 확실히 잡으세요
1.비밀번호 해싱을 컨트롤러마다 반복하면 한 곳이라도 누락되면 평문이 저장됩니다
2.pre('save') 훅에서 자동으로 해싱하면 모델을 통해 저장하는 모든 곳에서 일관되게 적용됩니다
3.다음 챕터에서 DB에 저장하지 않지만 조회 시 계산되는 가상 필드를 배웁니다


공유하기
진행도 23 / 34