post-image

Swagger trong SpringBoot là gì ?

Tổng quan

Bài viết này mình sẽ giới thiệu đến mọi người một công cụ có tên là Swagger. Vậy chúng ta cùng tìm hiểu xem Swagger là gì và cách sử dụng Swagger trong SpringBoot.

1. Swagger là gì ?

Swagger là một phần mềm mã nguồn mở được sử dụng để phát triển thiết kế và làm các document cho các restapi và còn có một số tính năng khác các bạn có thể vào link sau để xem https://swagger.io/docs/specification/2-0/what-is-swagger/

Có một số phần mềm swagger như Swagger Editor, Swagger Codegen, Swagger Inspector, Swagger UI. Trong đó swagger UI được sử dụng nhiều nhất

Vậy tại sao ta nên dùng Swagger? Swagger sẽ hỗ trợ các annoutation giúp cho ứng dụng spring của ta có thể mô tả đươc các API, và đồng thơi build một giao diện giúp người dùng có thể tương tác trực tiếp với các API đó.

2. Ví dụ về Swagger

Để hiểu rõ hơn về Swagger các bạn truy cập đường link sau: http://petstore.swagger.io/

Sau khi bạn truy cập vào trang web, bạn có thể thấy được đang có những API nào trong ứng dụng này và cả những method tương ứng của nó.

Swagger trong SpringBoot

Và đối với mỗi API chúng ta có thể biết được input và output của chúng cũng như những status có thể trả về của api này:

Swagger trong SpringBoot

3. Swagger trong SpringBoot

3.1 Thư viện:

Các bạn thêm thư viện sau vào trong file build.gradle

// https://mvnrepository.com/artifact/io.springfox/springfox-swagger2

compile group: ‘io.springfox’, name: ‘springfox-swagger2’, version: ‘2.9.2’

3.2 Chuẩn bị

Tạo một entity có tên là Category

Swagger trong SpringBoot

CategoryRepository:

Swagger trong SpringBoot

CategoryService và CategoryServiceImpl

Swagger trong SpringBoot

3.3 SwaggerConfig

Chúng ta tạo một file có tên là SwaggerConfig như sau:

Và như vậy là ta đã tích hợp được swagger vào trong ứng dụng Spring Boot, để kiểm tra chúng ta truy cập đường dẫn sau: http://localhost:8080/v2/api-docs. Các bạn có thể sử dụng postman để xem kết quả dưới dạng json.

4. SwaggerUI

Để xem được những thông tin dưới dạng json kia chúng ta sẽ sử dụng Swagger UI. Để sử dụng được swagger UI thì chúng ta thêm thư viện sau:

// https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui

compile group: ‘io.springfox’, name: ‘springfox-swagger-ui’, version: ‘2.9.2’

Bây giờ bạn có thể vào trang: http://localhost:8080/swagger-ui.html/ để xem kết quả:

Leave a Reply

Your email address will not be published. Required fields are marked *