Domanda

I può facilmente trovare tutti i riferimenti di alcune annotazioni nel mio progetto utilizzando SSR (ricerca strutturale e sostituire). Ad esempio ho seguente codice basato primavera:

class DashboardController {

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

Se cerco da modello org.springframework.web.bind.annotation.RequestMapping di quanto io troverò il mio codice. Ma cosa succede se voglio trovare metodi annotati con l'annotazione parametrizzata, in modo da trovare unico metodo con annotazioni @RequestMapping per "/ dashboard" url?

I può semplicemente cercare per stringa @RequestMapping("/dashboard"), ma annotazione può essere scritto in diversi modi:

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

ecc.

È stato utile?

Soluzione

Utilizzare ricerca strutturale e sostituisci in IntelliJ IDEA 14. Copiare il modello esistente metodi annotati e aggiungere "/ dashboard" come argomento per l'annotazione in questo modo:

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

Si potrebbe anche voler modificare la variabile $ $ annotazione e dargli il testo / regexp "RequestMapping" Questo dovrebbe trovare tutti i possibili formati di annotazione (sui metodi solo).

Altri suggerimenti

Perché non si cerca in questo modo:

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

Perché non basta fare una ricerca @RequestMapping("/dashboard"), la sua improbabile che dare che molti falsi positivi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top