SpringBoot で Swagger を使用する方法
Swagger の統合
依存関係:
<!-- Swagger --> <dependency> <groupId>com.battcn</groupId> <artifactId>swagger-spring-boot-starter</artifactId> <version>2.1.5-RELEASE</version> </dependency>
ここで使用している Swagger は公式ではないことにお気付きかもしれませんが、これはサードパーティによって統合されており、構成はより単純です。
構成の詳細
詳細な構成:
spring: swagger: enabled: true title: 标题 description: 描述信息 version: 系统版本号 contact: name: 维护者信息 base-package: swagger扫描的基础包,默认:全扫描(分组情况下此处可不配置) #全局参数,比如Token之类的验证信息可以全局话配置 global-operation-parameters: - description: "Token信息,必填项" modelRef: "string" name: "Authorization" parameter-type: "header" required: true groups: basic-group: base-package: com.battcn.controller.basic system-group: base-package: com.battcn.controller.system
私の構成
spring: swagger: title: 星空小屋 - 文章微服务接口 description: 文章微服务相关接口,包括文章、模块、知识点管理等 version: 1.0.0 - SNAPSHOT contact: name: cv大魔王 email: 1919301983@qq.com host: localhost enabled: true security: filter-plugin: true # 配置账号密码 username: root password: root
インターセプターを構成します。リーダーが構成する必要がある場合は、後でインターセプター構成があります。プロジェクトで使用する場合は、インターセプトされてアクセス不能になることを避けるために、元のインターセプター構成を変更し、次のパスを無視してください。 "swagger-ui.html"、"static/css/"、"static/js/"、"swagger-resources"、"/**/error"、"v2/api-docs"
を使用してプロジェクトを実行し、IP ポート番号/swagger-ui.html
にアクセスするテストを行います。たとえば、ブラウザでアクセスします: http://127.0.0.1 :13001/swagger -ui.html
##レビュー - よく使用される注釈
Swagger に詳しい人は、「一般的な注釈の段落」を無視してください。
@ApiOperation`@Api`:用在 Controller 类上,描述该类的作用 1. `value`="描述信息" 2. `description`="详细描述该类的作用"ログイン後にコピー
: 説明するためにコントローラーのリクエスト メソッドで使用されます。メソッドの機能。
: リクエスト パラメーターがオブジェクトの場合に使用され、オブジェクト クラスの役割を記述します。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>// 在对象类上使用@ApiModel
@ApiModel(value="CategoryREQ对象", description="类别查询条件")
public class CategoryREQ extends BaseRequest<Category> {
}</pre><div class="contentsignin">ログイン後にコピー</div></div>
:リクエストパラメータはオブジェクトのプロパティに、オブジェクトのプロパティの役割を記述します。
- value
: 属性の説明
##hidden - : クエリ条件属性かどうか、 false : (デフォルト値) はクエリ条件として API ドキュメントに表示されます; true は非表示であり、条件属性ではありません
// 请求方法参数是 CategoryREQ 对象 public Result search(@RequestBody CategoryREQ req) {} @ApiModel(value="CategoryREQ对象", description="类别查询条件") public class CategoryREQ extends BaseRequest<Category> { @ApiModelProperty(value = "分类名称") private String name; @ApiModelProperty(value="状态(1:正常,0:禁用)") private Integer status; }
ログイン後にコピー
- @ApiResponses
- : リクエスト メソッドで使用され、一連の応答を表すために使用されます。
##@ApiResponse : - @ApiResponses
で使用されます。 、通常はエラーを表現するために使用されます。 応答情報、注釈パラメーター:
code : 番号 (例: 400 - message
: メッセージ (例)) 「パラメータ入力エラー」
: この API応答
: 例外をスローしたクラス##@ApiIgnore
# を無視するには、このアノテーションを使用します
: 複数のリクエスト パラメーターに説明を追加するためにリクエスト メソッドで使用されます
: 単独で使用することも、@ApiImplicitParams 内で使用して 1 つのリクエスト パラメーターに説明を追加することもできますメソッドのリクエストパラメータ。
#name:パラメータ名
value
:パラメータの機能を説明します
- ##dataType
: パラメータのタイプ、パラメータのタイプ、デフォルトの文字列、その他の値 dataType="Integer"
## defaultValue - : パラメータのデフォルト値
- : パラメータを渡す必要があるかどうか (true/false)
- : パラメーターが配置される場所を指定します (ヘッダー/クエリ/パス/ボディ/フォーム)
- : パラメーターが送信されますリクエストヘッダー内 @RequestHeader
query
: パラメータを使用して自動マッピングと割り当てを直接完了 @RequestParam path
以上がSpringBoot で Swagger を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。body
: ストリーム形式での送信は POST のみをサポートします (一般的に使用されません) form
: フォーム形式での送信は POST のみサポートします (一般的に使用されません)
参照: // 请求方法有多个请求参数 size, current
@ApiImplicitParams({
@ApiImplicitParam(name="current", value="页码", required=true, paramType="path",dataType="int"),
@ApiImplicitParam(name="size", value="每页记录数", required=true, paramType="path",dataType="int")
})
@ApiOperation("根据分类名称与状态查询分类列表接口")
@PostMapping("/search/{current}/{size}")
Result search(@RequestBody CategoryREQ req, @PathVariable int current, @PathVariable int size);

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Jasypt の概要 Jasypt は、開発者が最小限の労力で基本的な暗号化機能を自分のプロジェクトに追加できる Java ライブラリであり、暗号化の仕組みを深く理解する必要はありません。一方向および双方向暗号化の高いセキュリティ。標準ベースの暗号化テクノロジー。パスワード、テキスト、数値、バイナリを暗号化します... Spring ベースのアプリケーション、オープン API への統合、JCE プロバイダーでの使用に適しています... 次の依存関係を追加します: com.github.ulisesbocchiojasypt-spring-boot-starter2. 1.1 Jasypt の特典はシステムのセキュリティを保護し、コードが漏洩した場合でもデータ ソースは保証されます。

Web アプリケーションの継続的な開発に伴い、API は最新の Web アプリケーション開発の標準の 1 つになりました。ただし、API の数と複雑さが増加するにつれて、API の保守と文書化はますます複雑になります。この問題を解決するために、Swagger が誕生しました。これは API ドキュメントを生成するためのツールであり、開発者が API の保守とドキュメント化を容易にすると同時に、視覚的なドキュメントやその他のさまざまな機能も提供します。この記事では、PHP で Swagger を使用して、

Laravel 開発: LaravelSwagger を使用して API ドキュメントを生成する方法? Web アプリケーションを開発する場合、API ドキュメントの処理は面倒ですが不可欠な作業となることがよくあります。 Swagger を使用して、API ドキュメントを自動的に生成および視覚化します。 Laravel 開発では、LaravelSwagger 拡張パッケージを使用して SwaggerAPI ドキュメントを簡単に生成できます。この記事ではLの使い方について説明します。

1. Redis は分散ロックの原則を実装しており、分散ロックが必要な理由 分散ロックについて話す前に、分散ロックが必要な理由を説明する必要があります。分散ロックの反対はスタンドアロン ロックです。マルチスレッド プログラムを作成するとき、共有変数を同時に操作することによって引き起こされるデータの問題を回避します。通常、ロックを使用して共有変数を相互に除外し、データの正確性を確保します。共有変数の使用範囲は同じプロセス内です。共有リソースを同時に操作する必要があるプロセスが複数ある場合、どうすれば相互排他的になるのでしょうか?今日のビジネス アプリケーションは通常マイクロサービス アーキテクチャであり、これは 1 つのアプリケーションが複数のプロセスをデプロイすることも意味します。複数のプロセスが MySQL の同じレコード行を変更する必要がある場合、順序の乱れた操作によって引き起こされるダーティ データを避けるために、分散が必要です。今回導入するスタイルはロックされています。ポイントを獲得したい

Springboot はファイルを読み取りますが、jar パッケージにパッケージ化した後、最新の開発にアクセスできません。jar パッケージにパッケージ化した後、Springboot がファイルを読み取れない状況があります。その理由は、パッケージ化後、ファイルの仮想パスが変更されるためです。は無効であり、ストリーム経由でのみアクセスできます。読み取ります。ファイルはリソースの下にあります publicvoidtest(){Listnames=newArrayList();InputStreamReaderread=null;try{ClassPathResourceresource=newClassPathResource("name.txt");Input

Springboot+Mybatis-plus が SQL ステートメントを使用して複数テーブルの追加操作を実行しない場合、私が遭遇した問題は、テスト環境で思考をシミュレートすることによって分解されます: パラメーターを含む BrandDTO オブジェクトを作成し、パラメーターをバックグラウンドに渡すことをシミュレートします。 Mybatis-plus で複数テーブルの操作を実行するのは非常に難しいことを理解してください。Mybatis-plus-join などのツールを使用しない場合は、対応する Mapper.xml ファイルを設定し、臭くて長い ResultMap を設定するだけです。対応する SQL ステートメントを記述します。この方法は面倒に見えますが、柔軟性が高く、次のことが可能です。

SpringBoot と SpringMVC はどちらも Java 開発で一般的に使用されるフレームワークですが、それらの間には明らかな違いがいくつかあります。この記事では、これら 2 つのフレームワークの機能と使用法を調べ、その違いを比較します。まず、SpringBoot について学びましょう。 SpringBoot は、Spring フレームワークに基づいたアプリケーションの作成と展開を簡素化するために、Pivotal チームによって開発されました。スタンドアロンの実行可能ファイルを構築するための高速かつ軽量な方法を提供します。

1. RedisAPI のデフォルトのシリアル化メカニズムである RedisTemplate1.1 をカスタマイズします。API ベースの Redis キャッシュ実装では、データ キャッシュ操作に RedisTemplate テンプレートを使用します。ここで、RedisTemplate クラスを開いて、クラスのソース コード情報を表示します。publicclassRedisTemplateextendsRedisAccessorimplementsRedisOperations、BeanClassLoaderAware{//キーを宣言、値の各種シリアル化メソッド、初期値は空 @NullableprivateRedisSe
