インターフェイスのドキュメントは闊歩するspringbootで生成されます

まず、なぜ闊歩する必要があり、それは問題を解決しますか?

  マイクロサービスsprnigbootの人気が、マイクロサービス、小さなマイクロサービス中小企業の数十、大企業およびマイクロサービスの数十万人の設計では、など、大声springc。だから、多くのマイクロは確かにサービス・インターフェースコールの多くを生成しました。コール・インタフェースは、確実にインターフェイスのドキュメントを書き込みます。マイクロサービスの有病率では、インターフェイスのドキュメントの何千もの調製は、闊歩が生じたので、それは達成し、ヒューマンインタフェース文書の作成の問題を解決するために、オートメーションを使用して、書き込みに人手に頼ることはできません。インタフェースおよび方法を通じて、いくつかの注意事項を追加することで、エンティティは、プロジェクトオートメーションインターフェイスのドキュメントの開始後に生成することができます。

  :闊歩はAPIドキュメントを維持するための新しい方法を提供し、4つの主要な利点がある
ドキュメントの1.自動生成:ノートのごく少量の必要性、闊歩APIドキュメントを自動的にコードに基づいて生成することができ、非常に良い保証文書の適時性が。
2.クロス言語的には、40個の言語をサポートしています。
3.闊歩UIは、対話型のAPIドキュメントで、我々はコール・パラメータを準備する複雑なプロセスを排除し、ドキュメントページに直接APIを呼び出すために試すことができます提示することができます。
4.あなたはまた、(例えばSOAPUIなど)のツールを関連仕様書をインポートすることができ、これらのツールは、自動的に私たちのために自動化されたテストを作成します。

第二に、springbootインタフェース、インタフェースのドキュメントの自動生成

コンフィギュレーションファイルの依存関係のpom.xml

<! -闊歩- > 
<依存>
<groupIdを> io.springfox </ groupIdを>
<たartifactId> springfox-swagger2 </たartifactId>
<バージョン> 2.9.2 </バージョン>
</依存関係>
<! -闊歩-ui - >
<依存性>
<のgroupId> io.springfox </のgroupId>
<たartifactId> springfox-闊歩-UI </たartifactId>
<バージョン> 2.9.2 </バージョン>
</依存>

コンフィギュレーション・ファイルapplication.propertiesを修正2.

#闊歩を開くには、オンライン環境が一般的に閉じているかどうかを示し
=真spring.swagger2.enabled

コンフィギュレーション・クラスの闊歩を追加3。

@Configuration 
@ EnableSwagger2
パブリッククラスSwaggerConfig {

@value(値= "$ {spring.swagger2.enabled}")
プライベートブールswaggerEnabled。

@Bean
公衆整理createRestApi(){
戻り新しいドケット(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.ENABLE(swaggerEnabled)
.select()は
(RequestHandlerSelectors.basePackage( "com.guo.boot")).apis
.paths (PathSelectors.any())
.build();
}

プライベートApiInfo apiInfo(){
リターン新しいApiInfoBuilder()
.TITLE( "接口文档")
.DESCRIPTION( "闊歩接口文档")
.termsOfServiceUrl( "https://wwww.baidu.com")
.version( "1.0")
.build();
}
}

以上注意点:

createRestApi()このメソッドは、あなたのバッグに名前を書く必要があり、代表者は、コンテンツパケットインタフェースドキュメントのテーブルを生成する必要があります。

経験住所:のhttp://127.0.0.1:8888 /威張っ-ui.html

第三に、ケース

コントローラ

@Api(DESCRIPTION = "ユーザインターフェース")
@RestController
@RequestMapping( "/ユーザ")
パブリッククラスUserControllerで{

@ApiOperation( "データの変更")

@GetMapping(値= "/ U / {ID}")
公衆UserVO findById(@PathVariable int型のID){
ランダム新しい新しいRAND =ランダム();
UserVO新しい新しいUserVO =ユーザー();
user.setId(ID);
文字列のTEMP = "temp01という";
user.setUsername(TEMP);
user.setPassword(TEMP );
INT = N-rand.nextInt(2);
user.setSex((バイト)N-);
戻りユーザ;

}
@ApiOperation( "シングルユーザクエリ、ユーザIDによってユーザ情報の検索")
@PostMapping(値= "/ユーザが作成/" = { "アプリケーション/ JSONを、文字セット= UTF-8"}生成、消費= { "アプリケーション/ JSON;のcharset = UTF-8"})
パブリックUserVO createrUser(@RequestBody userVO userVO){userVOを返します;}

}

@Api(値= "ユーザ情報")
@Data
パブリッククラスUserVO {
@ApiModelProperty(値= "ユーザID")
プライベートIDの整数であり;

@ApiModelProperty(値= "ユーザ名")
プライベート文字列名;

@ApiModelProperty(値= "パスワード「)
プライベート文字列のパスワード;

@ApiModelProperty(値=」0 =女性の性別1 =男性「)
のプライベートバイトのセックス、

@ApiModelProperty(値=」削除フラグは、デフォルトの0を削除しないでください、1削除「)
のプライベートバイトが削除された。

@ApiModelProperty (値= "更新")
プライベートデータupdateTime;
}

一般的な注意事項:

共通アノテーション闊歩
コメント 使用 ノートの場所
@Api クラスの役割を説明して クラスのノートに
@ApiOperation アクション説明したクラスのメソッド 方法についての注意
@ApiParam クラスメソッドのパラメータの役割を説明しました メソッドのパラメータについての注意
@ApiModel オブジェクトの役割を説明して 要求リターン結果オブジェクトまたはオブジェクトへの注釈
@ApiModelPropert の分野でのオブジェクトの役割を説明して 注釈オブジェクトまたは要求は、結果オブジェクトのフィールドを返します。

おすすめ

転載: www.cnblogs.com/97guoxiang/p/12595793.html