Dokument Per Spring 3, The IoC container, Adnotacja @Named
jest standardowym odpowiednikiem adnotacji .@Nazwa adnotacyjna w Spring MVC
Od @Repository
, @Service
i @Controller
są wszystkie @Component
, starałem się stosować @Named
dla wszystkich z nich w mojej aplikacji MVC wiosny. To działa dobrze. Ale znalazłem zastąpienie @Controller
wydaje się mieć błąd. W klasie kontrolera oryginalnie było to
@Controller
public class MyController{
...
}
Działa dobrze. Kiedy zmienił @Controller
do @Named
@Named
public class MyController{
...
}
To nie powiodło się z powodu błędu:
"No mapping found for HTTP request with URI ...".
Ale jeśli dodałem @RequestMapping
do klasy jak postępować
@Named
@RequestMapping
public class MyController{
...
}
będzie działać zgodnie z oczekiwaniami.
Dla @Repository
i @Service
, mogę po prostu zastąpić je @Named
bez problemu. Ale wymiana @Controller
wymaga dodatkowej pracy. Czy jest coś czego brakuje w konfiguracji?
Czy to znaczy, mogę bezpiecznie korzystać z '@ Named' zastąpić '@ Component' dla generycznego wstrzykiwania fasoli, ale nadal potrzebuję używać' @ Repository', '@ Service' i' @ Controller' w specyficznych funkcjach Spring MVC? –
@dino Nie ma za co. Rozważ zaakceptowanie tej odpowiedzi, chyba że chcesz poczekać na więcej odpowiedzi z innymi szczegółami. –