Spring framework 4.3 introduced variants of the ``++@RequestMapping++`` annotation to better represent the semantics of the annotated methods. The use of ``++@GetMapping++``, ``++@PostMapping++``, ``++@PutMapping++``, ``++@PatchMapping++`` and ``++@DeleteMapping++`` should be preferred to the use of the raw ``++@RequestMapping(method = RequestMethod.XYZ)++``.


= Noncompliant Code Example

----
@RequestMapping(path = "/greeting", method = RequestMethod.GET) // Noncompliant
public Greeting greeting(@RequestParam(value = "name", defaultValue = "World") String name) {
...
}
----

= Compliant Solution

----
@GetMapping(path = "/greeting") // Compliant
public Greeting greeting(@RequestParam(value = "name", defaultValue = "World") String name) {
...
}
----


