Risposte:
@GetMapping
è un'annotazione composta che funge da scorciatoia per @RequestMapping(method = RequestMethod.GET)
.
@GetMapping
è il più recente annotaion. Supporta i consumi
Le opzioni di consumo sono:
consumes = "text / plain"
consumes = {"text / plain", "application / *"}
Per ulteriori dettagli, consultare: GetMapping Annotation
oppure leggi: richiedi varianti di mappatura
RequestMapping supporta anche i consumi
GetMapping possiamo applicare solo a livello di metodo e l'annotazione RequestMapping possiamo applicare a livello di classe e a livello di metodo
Come puoi vedere qui :
In particolare,
@GetMapping
è un'annotazione composta che funge da scorciatoia per@RequestMapping(method = RequestMethod.GET)
.Differenza tra
@GetMapping
&@RequestMapping
@GetMapping
supporta l'consumes
attributo like@RequestMapping
.
@RequestMapping
è un livello di classe
@GetMapping
è a livello di metodo
Con sprint Spring 4.3. e le cose sono cambiate. Ora puoi usare @GetMapping sul metodo che gestirà la richiesta http. La specifica @RequestMapping a livello di classe viene perfezionata con l'annotazione (a livello di metodo) @GetMapping
Ecco un esempio:
@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";
}
}
Prima della primavera 4.3, lo era @RequestMapping(method=RequestMethod.GET)
Risposta breve:
Non c'è differenza in semantico.
In particolare, @GetMapping è un'annotazione composta che funge da collegamento per @RequestMapping (metodo = RequestMethod.GET).
Ulteriori letture:
RequestMapping
può essere utilizzato a livello di classe:
Questa annotazione può essere utilizzata sia a livello di classe che a livello di metodo. Nella maggior parte dei casi, a livello di metodo le applicazioni preferiranno utilizzare una delle varianti specifiche del metodo HTTP @GetMapping, @PostMapping, @PutMapping, @DeleteMapping o @PatchMapping.
mentre GetMapping
si applica solo al metodo:
Annotazione per il mapping delle richieste HTTP GET su metodi specifici del gestore.
@GetMapping
supportsconsumes
- docs.spring.io/spring-framework/docs/current/javadoc-api/org/…