Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 3b75e62

Browse files
add: SpringDoc OpenAPI to Spring Boot Projec and Define API Information using Annotations
1 parent 7dbfe7e commit 3b75e62

File tree

3 files changed

+33
-0
lines changed

3 files changed

+33
-0
lines changed

‎pom.xml‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,12 @@
8989
<scope>runtime</scope>
9090
</dependency>
9191

92+
<!-- https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-starter-webmvc-ui -->
93+
<dependency>
94+
<groupId>org.springdoc</groupId>
95+
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
96+
<version>2.1.0</version>
97+
</dependency>
9298

9399
</dependencies>
94100

‎src/main/java/com/springboot/blog/SpringbootBlogRestApiApplication.java‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,36 @@
11
package com.springboot.blog;
22

3+
import io.swagger.v3.oas.annotations.ExternalDocumentation;
4+
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
5+
import io.swagger.v3.oas.annotations.info.Contact;
6+
import io.swagger.v3.oas.annotations.info.Info;
7+
import io.swagger.v3.oas.annotations.info.License;
38
import org.modelmapper.ModelMapper;
49
import org.springframework.boot.SpringApplication;
510
import org.springframework.boot.autoconfigure.SpringBootApplication;
611
import org.springframework.context.annotation.Bean;
712

813
@SpringBootApplication
14+
@OpenAPIDefinition(
15+
info = @Info(
16+
title = "Spring Boot Blog App REST APIs",
17+
description = "Spring Boot Blog App REST APIs documentation",
18+
version = "v1.0",
19+
contact = @Contact(
20+
name = "Adilet Kozubaev",
21+
email = "adiletkdev@gmail.com",
22+
url = "https://www.******.net"
23+
),
24+
license = @License(
25+
name = "Apache 2.0",
26+
url = "https://www.******.net/license"
27+
)
28+
),
29+
externalDocs = @ExternalDocumentation(
30+
description = "Spring Boot Blog App documentation",
31+
url = "https://github.com/adiletkdev/springboot-blog-rest-api"
32+
)
33+
)
934
public class SpringbootBlogRestApiApplication {
1035

1136
@Bean

‎src/main/java/com/springboot/blog/config/SecurityConfig.java‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
5656
//authorize.anyRequest().authenticated()
5757
authorize.requestMatchers(HttpMethod.GET, "/api/**").permitAll()
5858
.requestMatchers("/api/auth/**").permitAll()
59+
.requestMatchers("/swagger-ui/**").permitAll()
60+
.requestMatchers("/v3/api-docs/**").permitAll()
5961
.anyRequest().authenticated()
6062

6163
).exceptionHandling(exception -> exception

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /