Kata pengantar
Di blog sebelumnya, kami mendaftarkan layanan ke Eureka. Kita dapat melihat dari antarmuka UUSE UI mana yang telah terdaftar di Eureka Server. Namun, jika kita ingin melihat metode antarmuka yang tenang yang disediakan oleh layanan saat ini, kita tidak punya cara untuk mendapatkannya. Metode tradisional adalah memilah dokumen antarmuka layanan untuk komunikasi antara pengembang. Dalam hal ini, berkali -kali, ini akan menyebabkan ketidakkonsistenan antara dokumen dan kode, seperti kode yang diubah, tetapi dokumen antarmuka belum diubah, dan Swagger2 memberi kita solusi yang sempurna. Mari kita lihat bagaimana Swagger2 memecahkan masalah.
1. Memperkenalkan paket JAR yang bergantung pada Swagger2
<!-Swagger2-> <dependency> <GroupId> io.springfox </groupid> <ArtifactId> springfox-swagger2 </artifactid> <version> 2.2.2 </version> </artifact> </version> <pringfox> </apregager> version </gruptid </gruptid> <ArtifactD> <TroGox> Io.springfox </groupid> <ArTtifacTID> Springfox- springAcger </gruptid> </artfox </art/versicix </gruptid> <TroGox> </dependency>
2. Inisialisasi konfigurasi Swagger2
@Configuration @enableSwagger2 // aktifkan Swagger2 kelas publik swagger2 {@bean docket public createrestapi () {// Buat API Informasi Dasar Pengembalian Doket Baru (DocumentationType.Swagger_2) .ApiInfo (APIInfo (). Select () .apis (requesthandlectors.basepor (). " Pindai semua API di bawah paket ini yang perlu ditampilkan dalam Swagger, kecuali untuk anotasi @apignore Annotated.Paths (PathSelectors.any ()) .build (); } private apiInfo apiInfo () {// informasi dasar tentang membuat API, yang akan ditampilkan di UI Swagger. Return new ApiInfobuilder () .title ("Bangun API Restful di Spring Boot Menggunakan Swagger2") // API title.description ("Restful API disediakan oleh rdcloud-jpa") // API description.contact ("chhliu@") // contact.version ("1.0") // version. }}Catatan: Kelas konfigurasi ini perlu dibuat di direktori aplikasi pada level yang sama. Ketika proyek dimulai, kelas konfigurasi diinisialisasi.
3. Tingkatkan Informasi Dokumen API
public interface SonarControllerI { @ApiOperation(value="get Url information corresponding to Sonar of the project group", notes="get Url information corresponding to Sonar of the project group based on id")// Use this annotation to describe interface method information @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "SonarUrl table ID", required = true, dataType = "Long", paramType = "path")}) // Gunakan anotasi ini untuk menggambarkan informasi parameter metode. Perlu dicatat di sini bahwa parameter paramType perlu dikonfigurasi sebagai jalur, jika tidak kesalahan akan dilaporkan saat mengakses metode antarmuka di UI @GetMapping ("/get/{id}") sonarurl get (@pathvariable long ID); @Apioperation (value = "Dapatkan semua informasi URL yang sesuai dengan grup proyek sonar") @getMapping ("/get/all") Daftar <SonarUrl> getAll (); } Catatan: ParamType mewakili jenis parameter, nilai opsional adalah "jalur", "tubuh", "kueri", "header", "bentuk"
4. Tingkatkan informasi jenis pengembalian
@Entity (name = "sonar_url") kelas publik sonarurl mengimplementasikan serializable { / ** * * / private static final long serialVersionuid = 1l; @Apimodelproperty (value = "kunci primer", hidden = false, notes = "kunci primer, tersembunyi", diperlukan = true, datatype = "long") // Gunakan anotasi ini untuk menggambarkan informasi properti. Saat tersembunyi = true, properti ini tidak akan ditampilkan di API @ID @GeneratedValue (Strategy = GenerationType.Auto) Private Long ID; @Apimodelproperty (value = "Alamat tautan url") @column (name = "url") private string url; @ApimodelProperty (value = "Project Group") @Column (name = "Team") Private String Team; @Apimodelproperty (value = "department") @column (name = "department") Private String Department; ... oloskan Getter, Metode Setter ...}5. Mulai aplikasi
1. Masuk di browser: http: // localhost: 7622/swagger-ui.html
2. Hasilnya adalah sebagai berikut:
6. Akses dan pengujian dokumen API
Selain menyediakan fungsi penonton antarmuka API, Swagger juga menyediakan fungsi debugging dan pengujian.
Hasil tes adalah sebagai berikut:
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.