Antworten:
@GetMapping
ist eine zusammengesetzte Anmerkung, die als Verknüpfung für dient @RequestMapping(method = RequestMethod.GET)
.
@GetMapping
ist die neuere Annotaion. Es unterstützt Verbrauchs
Verbrauchsoptionen sind:
verbraucht = "text / plain"
verbraucht = {"text / plain", "application / *"}
Weitere Informationen finden Sie unter: GetMapping-Anmerkung
oder lesen Sie: Anforderungszuordnungsvarianten
RequestMapping unterstützt auch Verbrauchsdaten
GetMapping können wir nur auf Methodenebene und RequestMapping-Annotation auf Klassenebene sowie auf Methodenebene anwenden
Wie Sie hier sehen können :
Insbesondere
@GetMapping
handelt es sich um eine zusammengesetzte Anmerkung, die als Verknüpfung für dient@RequestMapping(method = RequestMethod.GET)
.Unterschied zwischen
@GetMapping
&@RequestMapping
@GetMapping
unterstützt dasconsumes
Attribut wie@RequestMapping
.
@RequestMapping
ist eine Klassenstufe
@GetMapping
ist eine Methodenebene
Mit Sprint Spring 4.3. und die Dinge haben sich geändert. Jetzt können Sie @GetMapping für die Methode verwenden, die die http-Anforderung verarbeitet. Die @ RequestMapping-Spezifikation auf Klassenebene wird mit der @ GetMapping-Annotation (auf Methodenebene) verfeinert
Hier ist ein Beispiel:
@Slf4j
@Controller
@RequestMapping("/orders")/* The @Request-Mapping annotation, when applied
at the class level, specifies the kind of requests
that this controller handles*/
public class OrderController {
@GetMapping("/current")/*@GetMapping paired with the classlevel
@RequestMapping, specifies that when an
HTTP GET request is received for /order,
orderForm() will be called to handle the request..*/
public String orderForm(Model model) {
model.addAttribute("order", new Order());
return "orderForm";
}
}
Vor Frühjahr 4.3 war es @RequestMapping(method=RequestMethod.GET)
Kurze Antwort:
Es gibt keinen Unterschied in der Semantik.
Insbesondere ist @GetMapping eine zusammengesetzte Anmerkung, die als Verknüpfung für @RequestMapping (method = RequestMethod.GET) dient.
Weiterführende Literatur:
RequestMapping
kann auf Klassenebene verwendet werden:
Diese Anmerkung kann sowohl auf Klassen- als auch auf Methodenebene verwendet werden. In den meisten Fällen bevorzugen Anwendungen auf Methodenebene die Verwendung einer der HTTP-methodenspezifischen Varianten @GetMapping, @PostMapping, @PutMapping, @DeleteMapping oder @PatchMapping.
während GetMapping
gilt nur für Methode:
Anmerkung zum Zuordnen von HTTP-GET-Anforderungen zu bestimmten Handlermethoden.
@GetMapping
Stützenconsumes
- docs.spring.io/spring-framework/docs/current/javadoc-api/org/...