Question

Je peux facilement trouver toutes les mentions d'une annotation dans mon projet en utilisant SSR (recherche structurelle et remplacer). Par exemple, j'ai code suivant à base de printemps:

class DashboardController {

  @RequestMapping("/dashboard")
  public void doDashboard() {
    [...]
  }
}

Si je recherche par modèle org.springframework.web.bind.annotation.RequestMapping que je trouverai mon code. Mais si je veux trouver des méthodes portant l'annotation paramétrisé, afin de trouver seule méthode avec annotations @RequestMapping pour url « / tableau de bord »?

Je peux simplement une recherche par chaîne de @RequestMapping("/dashboard"), mais l'annotation peut être écrit de plusieurs façons:

@RequestMapping("/dashboard")
@RequestMapping(value = "/dashboard", method = {RequestMethod.POST})
@RequestMapping(headers = "content-type=application/*", value = "/dashboard")

etc.

Était-ce utile?

La solution

Utilisez la recherche structurelle et remplacer dans IntelliJ IDEA 14. Copiez le modèle existant méthodes annotées et ajouter « / tableau de bord » comme un argument à l'annotation comme ceci:

class $Class$ {
  @$Annotation$("/dashboard")
  $MethodType$ $MethodName$($ParameterType$ $ParameterName$);
}

Vous pouvez également modifier la variable Annotation $ et $ donner le texte / regexp « RequestMapping » Cela devrait trouver tous les formats possibles de l'annotation (sur les méthodes uniquement).

Autres conseils

Pourquoi ne cherchez-vous pas ceci:

@RequestMapping\(((.*?)value\s*=\s*)?"/dashboard"(.*?)\)

Pourquoi ne pas simplement faire une recherche de texte pour @RequestMapping("/dashboard"), il est peu probable de donner que de nombreux faux positifs.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top