π₯ Swagger ν΄λμ€λͺ μ€λ³΅
π₯ Swagger ν΄λμ€λͺ
μ€λ³΅
λ¬Έμ μν©
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/* NoticeRequestDto$CREATE */
@Schema(description = "곡μ§μ¬ν μμ² DTO")
class NoticeRequestDto {
@Schema(description = "곡μ§μ¬ν λ±λ‘ μμ²")
class CREATE (
@Schema(description = "μ λͺ©")
val title: String,
@Schema(description = "λ΄μ©")
val content: String,
@Schema(description = "μμ±μ μ΄λ©μΌ")
val writerEmail: String
)
}
/*Β InquiryRequestDto$CREATE */
@Schema(description = "λ¬Έμ μμ² DTO")
class InquiryRequestDto {
@Schema(description = "λ¬Έμ λ±λ‘ μμ²")
class CREATE (
@Schema(description = "μ λͺ©")
val title: String,
@Schema(description = "λ΄μ©")
val content: String,
@Schema(description = "μμ±μ μ΄λ©μΌ")
val writerEmail: String,
@Schema(description = "μμ±μ μ νλ²νΈ")
val writerPhoneNumber: String? = null
)
}
Swagger UI
μμ 곡μ§μ¬ν μμ²DTO
κ°InquiryRequestDto$CREATE
μ μλͺ» λ§€ν λμλ€.
λ¬Έμ μμΈ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
NoticeRequestDto.class
βββ CREATE.class
βββ READ.class
βββ UPDATE.class
βββ DELETE.class
InquiryRequestDto.class
βββ CREATE.class
βββ READ.class
βββ UPDATE.class
βββ DELETE.class
UserRequestDto.class
βββ CREATE.class
βββ READ.class
βββ UPDATE.class
βββ DELETE.class
- νμμ μμ²
DTO
ꡬ쑰μΈλ°,Swagger
μμλ ν¨ν€μ§ μ 보λ κ΄λ¦¬νμ§ μκΈ° λλ¬ΈμNested Class
λͺ μ΄ μ€λ³΅λ κ²½μ° λ§€νμ΄ μ λλ‘ λμ§ μλλ€κ³ νλ€.
ν΄κ²° λ°©λ²
β
@Schema
μ μΈ μ name
μ§μ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Schema(
name = "createNoticeDto",
description = "곡μ§μ¬ν λ±λ‘ μμ²"
)
class CREATE (
@Schema(description = "μ λͺ©")
val title: String,
@Schema(description = "λ΄μ©")
val content: String,
@Schema(description = "μμ±μ μ΄λ©μΌ")
val writerEmail: String
)
name
κ°μ λ€λ₯Έ ν΄λμ€μ κ²ΉμΉλ©΄ μ λλ€.Β
β
application.properties
μ€μ
1
springdoc.use-fqn=true
- ν΄λμ€λ₯Ό ν¨ν€μ§λ‘ ꡬλΆνλλ‘ νλ μ€μ μ΄λΌκ³ νλ€.
νκ³
- μμ§μ
Nested Class
κΈ°λ°μ μμ²DTO
κ΅¬μ‘°κ° κ°λ μ± μΈ‘λ©΄μμ μ’λ€κ³ μκ°νκ³ μλλ°, λ€λ₯Έ λ°©ν₯λ μκ°ν΄λ΄μΌκ² λ€κ³ λκΌλ€.
This post is licensed under CC BY 4.0 by the author.