Per fornire una documentazione API generata in fase di runtime, desidero eseguire un'iterazione su tutti i controller Spring MVC. Tutti i controller sono annotati con l'annotazione Spring @Controller. Attualmente lo faccio in questo modo:Come trovare tutti i controller in Spring MVC?
for (final Object bean: this.context.getBeansWithAnnotation(
Controller.class).values())
{
...Generate controller documentation for the bean...
}
Ma la prima chiamata di questo codice è ESTREMAMENTE lento. Mi chiedo se Spring ignori le classi ALL nel classpath invece di controllare solo i bean definiti. I controller sono già caricati quando viene eseguito il codice precedente, il log li mostra tutti con i relativi mapping delle richieste, quindi Spring MVC deve già conoscerli tutti e deve esserci un modo più rapido per ottenere un elenco di essi. Ma come?
Mi chiedo perché avresti bisogno di quelle informazioni, dato che stai facendo l'annotazione di '@ Controller' (s) in ogni caso – ant
Ha detto che nella domanda molto chiaramente che vuole generare la documentazione per quei controller. –