Skip to content

Commit d31b449

Browse files
authored
[DEV-12] Swagger 의존성 추가 (#57)
1 parent 4accef0 commit d31b449

File tree

9 files changed

+77
-108
lines changed

9 files changed

+77
-108
lines changed

build.gradle

Lines changed: 35 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,72 +1,73 @@
11
plugins {
2-
id 'java'
3-
id 'org.springframework.boot' version '2.7.12'
4-
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
5-
id 'jacoco'
2+
id 'java'
3+
id 'org.springframework.boot' version '2.7.12'
4+
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
5+
id 'jacoco'
66
}
77

88
group = 'ddingdong'
99
version = '0.0.1-SNAPSHOT'
1010

1111
java {
12-
sourceCompatibility = '17'
12+
sourceCompatibility = '17'
1313
}
1414

1515
jar {
16-
enabled = false
16+
enabled = false
1717
}
1818

1919
configurations {
20-
compileOnly {
21-
extendsFrom annotationProcessor
22-
}
20+
compileOnly {
21+
extendsFrom annotationProcessor
22+
}
2323
}
2424

2525
repositories {
26-
mavenCentral()
26+
mavenCentral()
2727
}
2828

2929
dependencies {
30-
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
31-
implementation 'org.springframework.boot:spring-boot-starter-web'
32-
implementation 'org.springframework.boot:spring-boot-starter-security'
33-
implementation 'org.springframework.boot:spring-boot-starter-validation'
30+
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
31+
implementation 'org.springframework.boot:spring-boot-starter-web'
32+
implementation 'org.springframework.boot:spring-boot-starter-security'
33+
implementation 'org.springframework.boot:spring-boot-starter-validation'
3434

35-
implementation 'io.hypersistence:hypersistence-utils-hibernate-55:3.7.2'
35+
implementation 'io.hypersistence:hypersistence-utils-hibernate-55:3.7.2'
3636

37-
implementation 'com.auth0:java-jwt:4.2.1'
37+
implementation 'com.auth0:java-jwt:4.2.1'
3838

39-
implementation 'io.awspring.cloud:spring-cloud-starter-aws:2.4.4'
40-
implementation 'com.mysql:mysql-connector-j'
39+
implementation 'io.awspring.cloud:spring-cloud-starter-aws:2.4.4'
40+
implementation 'com.mysql:mysql-connector-j'
4141

42-
implementation 'org.apache.poi:poi:5.2.0'
43-
implementation 'org.apache.poi:poi-ooxml:5.2.0'
44-
implementation 'org.springframework.boot:spring-boot-configuration-processor'
42+
implementation 'org.apache.poi:poi:5.2.0'
43+
implementation 'org.apache.poi:poi-ooxml:5.2.0'
44+
implementation 'org.springframework.boot:spring-boot-configuration-processor'
4545

46-
implementation 'io.sentry:sentry-logback:7.6.0'
46+
implementation 'io.sentry:sentry-logback:7.6.0'
47+
implementation 'org.springdoc:springdoc-openapi-ui:1.6.11'
4748

48-
compileOnly 'org.projectlombok:lombok'
49-
runtimeOnly 'com.h2database:h2'
50-
annotationProcessor 'org.projectlombok:lombok'
51-
testImplementation 'org.springframework.boot:spring-boot-starter-test'
49+
compileOnly 'org.projectlombok:lombok'
50+
runtimeOnly 'com.h2database:h2'
51+
annotationProcessor 'org.projectlombok:lombok'
52+
testImplementation 'org.springframework.boot:spring-boot-starter-test'
5253
}
5354

5455
tasks.named('test') {
55-
useJUnitPlatform()
56+
useJUnitPlatform()
5657
}
5758

5859
jacoco {
59-
toolVersion = '0.8.10'
60+
toolVersion = '0.8.10'
6061
}
6162

6263
test {
63-
finalizedBy jacocoTestReport
64+
finalizedBy jacocoTestReport
6465
}
6566

6667
jacocoTestReport {
67-
reports {
68-
html.enabled true
69-
xml.enabled true
70-
csv.enabled true
71-
}
68+
reports {
69+
html.enabled true
70+
xml.enabled true
71+
csv.enabled true
72+
}
7273
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package ddingdong.ddingdongBE.common.config;
2+
3+
import io.swagger.v3.oas.models.Components;
4+
import io.swagger.v3.oas.models.OpenAPI;
5+
import io.swagger.v3.oas.models.security.SecurityScheme;
6+
import io.swagger.v3.oas.models.servers.Server;
7+
import java.util.List;
8+
import org.springframework.beans.factory.annotation.Value;
9+
import org.springframework.context.annotation.Bean;
10+
import org.springframework.context.annotation.Configuration;
11+
12+
@Configuration
13+
public class OpenApiConfig {
14+
15+
@Value("${swagger.server.url}")
16+
private String serverUrl;
17+
18+
@Bean
19+
public OpenAPI openApi() {
20+
return new OpenAPI()
21+
.components(securityComponents())
22+
.servers(List.of(new Server().url(serverUrl)));
23+
}
24+
25+
private Components securityComponents() {
26+
return new Components()
27+
.addSecuritySchemes(
28+
"AccessToken",
29+
new SecurityScheme()
30+
.type(SecurityScheme.Type.HTTP)
31+
.scheme("bearer")
32+
.bearerFormat("JWT")
33+
);
34+
}
35+
36+
}

src/main/java/ddingdong/ddingdongBE/common/config/SecurityConfig.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package ddingdong.ddingdongBE.common.config;
22

3-
import static org.springframework.http.HttpMethod.*;
3+
import static org.springframework.http.HttpMethod.GET;
44

55
import ddingdong.ddingdongBE.auth.service.JwtAuthService;
66
import ddingdong.ddingdongBE.common.filter.JwtAuthenticationFilter;
@@ -39,6 +39,7 @@ public SecurityFilterChain filterChain(HttpSecurity http, JwtAuthService authSer
3939
API_PREFIX + "/notices/**",
4040
API_PREFIX + "/banners/**")
4141
.permitAll()
42+
.antMatchers("/v3/api-docs/**", "/swagger-ui/**", "/swagger-resources/**").permitAll()
4243
.anyRequest()
4344
.authenticated()
4445
.and()

src/main/resources/application.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,7 @@ sentry:
4040
dsn: ${SENTRY_KEY}
4141
enable-tracing: true
4242
environment: dev
43+
44+
swagger:
45+
server:
46+
url: ${SERVER_URL:http://localhost:8080}

src/main/resources/console-appender.xml

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/main/resources/file-error-appender.xml

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/main/resources/file-info-appender.xml

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/main/resources/logback-spring.xml

Lines changed: 0 additions & 29 deletions
This file was deleted.

src/main/resources/sentry-appender.xml

Lines changed: 0 additions & 8 deletions
This file was deleted.

0 commit comments

Comments
 (0)