Update: Es scheint, dass Ihre Frage völlig anders lautet.
Nein, Sie können nicht dieselbe Url mit verschiedenen Parametern in verschiedenen Controllern verwenden. Und es macht auch nicht viel Sinn - die URL spezifiziert eine Ressource oder Aktion, und sie kann nicht genau gleich in zwei Controllern benannt werden (die unterschiedliche Verhaltensweisen bezeichnen).
Sie haben zwei Möglichkeiten:
- unterschiedliche URLs verwenden
- eine Methode in einem Misc-Controller verwenden, die je nach Anforderungsparameter an die verschiedenen Controller (die injiziert werden) weitergeleitet wird.
Ursprüngliche Antwort:
Nein. Aber Sie können zwei Methoden haben, die das Gleiche tun:
@RequestMethod("/foo")
public void foo(@ModelAttribute("A") A a) {
foobar(a, null);
}
@RequestMethod("/bar")
public void bar(@ModelAttribute("B") B b) {
foobar(null, b);
}
Wenn ich nicht richtig verstanden habe, und Sie wollen das gleiche ModelAttribute, dann einfach:
@RequestMapping(value={"/foo", "/bar"})
Und schließlich - wenn Sie verschiedene Anfrageparameter benötigen, können Sie @RequestParam(required=false)
um alle möglichen Parameter aufzulisten.