Skip to content

πŸš€ [κΈ°λŠ₯κ°œμ„ ][μ±„νŒ…] μ±„νŒ… μ•Œλ¦Ό 및 λ³€μˆ˜λͺ… κ°œμ„ Β #541

@discipline24

Description

@discipline24

πŸ“ ν˜„μž¬ 문제점

  • ν™œλ™μ€‘μΈ λ©€λ²„λŠ” μ±„νŒ… μ•Œλ¦Ό μ œμ™Έ μ²˜λ¦¬κ°€ ν•„μš”ν•©λ‹ˆλ‹€.
  • μ±„νŒ… κ΄€λ ¨ swagger docs 점검이 ν•„μš”ν•©λ‹ˆλ‹€.
  • member의 isOnlineν•„λ“œλŠ” online으둜 μ§λ ¬ν™”λ˜λ‚˜, ν”„λ‘ νŠΈμ˜ μš”μ²­μœΌλ‘œ isOnline으둜 좜λ ₯되게 λ³€κ²½ν•΄μ•Ό ν•©λ‹ˆλ‹€.

πŸ› οΈ ν•΄κ²° λ°©μ•ˆ / μ œμ•ˆ κΈ°λŠ₯

  • μ‹€μ‹œκ°„ 접속 μƒνƒœ 기반 μ•Œλ¦Ό λΆ„κΈ° 처리: λ©”μ‹œμ§€ 전솑 둜직 λ‹¨κ³„μ—μ„œ μˆ˜μ‹ μžμ˜ ν˜„μž¬ μ„Έμ…˜ μƒνƒœ(ν™œλ™ 쀑 μ—¬λΆ€)λ₯Ό μ‘°νšŒν•˜μ—¬, ν™œλ™ 쀑(isOnline == true)인 경우 ν‘Έμ‹œ μ•Œλ¦Ό API ν˜ΈμΆœμ„ μŠ€ν‚΅ν•˜λ„λ‘ κ°œμ„ ν•©λ‹ˆλ‹€.

  • Swagger API λͺ…μ„Έ ν˜„ν–‰ν™”: κΈ°μ‘΄ μ±„νŒ… API의 Request/Response λͺ¨λΈμ„ μ „μˆ˜ μ‘°μ‚¬ν•˜μ—¬ λˆ„λ½λœ μ„€λͺ…을 λ³΄μΆ©ν•˜κ³ , μ‹€μ œ 응닡값과 Swagger λ¬Έμ„œκ°€ μΌμΉ˜ν•˜λ„λ‘ μ—…λ°μ΄νŠΈν•©λ‹ˆλ‹€.

  • JSON 직렬화 넀이밍 κ°•μ œ: Java Bean κ·œμ•½μƒ is둜 μ‹œμž‘ν•˜λŠ” boolean ν•„λ“œκ°€ online으둜 μ§λ ¬ν™”λ˜λŠ” ν˜„μƒμ„ @JsonProperty μ–΄λ…Έν…Œμ΄μ…˜μ„ μ‚¬μš©ν•˜μ—¬ ν”„λ‘ νŠΈμ—”λ“œ μš”κ΅¬μ‚¬ν•­μΈ isOnline으둜 κ³ μ •ν•©λ‹ˆλ‹€.

βš™οΈ μž‘μ—… λ‚΄μš©

μ•Œλ¦Ό 둜직:

  • λ©”μ‹œμ§€ 전솑 μ‹œ isOnline ν•„λ“œ μ—…λ°μ΄νŠΈ ν›„, 온라인 여뢀에 따라 μ•Œλ¦Ό μ œμ™Έ 처리

API λ¬Έμ„œ:

  • ChatController λ‚΄ Swagger μ–΄λ…Έν…Œμ΄μ…˜(@tag, @operation) μ΅œμ‹ ν™”
  • 응닡 DTO ν•„λ“œλ³„ @Schema μ„€λͺ… μΆ”κ°€

직렬화 μˆ˜μ •:

  • Member κ΄€λ ¨ DTO/Entity의 isOnline ν•„λ“œμ— @JsonProperty("isOnline") 적용
  • Jackson ObjectMapper μ„€μ • λ˜λŠ” ν•„λ“œ 레벨 μˆ˜μ •μ„ ν†΅ν•œ μ‚¬μ΄λ“œ μ΄νŽ™νŠΈ 검증

πŸ™‹β€β™‚οΈ λ‹΄λ‹Ήμž

  • λ°±μ—”λ“œ: @discipline24
  • ν”„λ‘ νŠΈμ—”λ“œ: 이름
  • λ””μžμΈ: 이름

Metadata

Metadata

Assignees

Labels

μž‘μ—…μ™„λ£Œμž‘μ—… μ™„λ£Œ μƒνƒœμΈ 경우 (이슈 폐쇄)

Type

No type

Projects

Status

μž‘μ—…μ™„λ£Œ

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions