簡體   English   中英

IntelliJ - 是否可以向 controller 類的所有方法添加自定義注釋,例如 @SecurityCheck?

[英]IntelliJ - is it possible to add custom annotation e.g. @SecurityCheck to all methods of a controller classes?

我創建了一個注釋,例如 @SecurityCheck 和一個(Restfull)controller 建議來檢查 controller 是否有 @SecurityCheck 注釋。

我有近 300 個 controller 方法。 我很難手動在所有 controller 中的每種方法上應用@SecurityCheck。

有沒有辦法可以在我的項目中 controller 層的每個方法上添加特定的代碼片段,例如 @SecurityCheck。 我正在使用 InteliJ。

例子:

這是示例 controller 方法的代碼片段。 並且每個 controller 方法都有 @ApiResponses() 注釋。

/... some other annotations .../
@ApiResponses({
        @ApiResponse(code = 200, message = "Success", response = Response.class) })
public Response getExampleResourceMethod(
        @RequestBody String id) {
    return someService.getData(id);
}

方法名稱可以和 Arguments 不同。 但幾乎所有方法都有 @ApiResponses() 注釋和不同的注釋參數。

預計 Output

/... some other annotations .../
@ApiResponses({
        @ApiResponse(code = 200, message = "Success", response = Response.class) })
@SecurityCheck()
public Response getExampleResourceMethod(
        @RequestBody String id) {
    return someService.getData(id);
}

您也許可以使用正則表達式和搜索和替換工具來做到這一點

編輯:以下解決方案的快速示例:

搜索: (@ApiResponses\((\S[\n]?.*)}\))

替換: $1\r\n@SecurityCheck

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM