Giriş
Bir nesnenin JSON'a serialize edilerek gönderilmesini sağlar. Açıklaması şöyle.
Örnek
Eğer bu anotasyonu kullanmazsak şöyle yapmamız gerekir.
Şöyle yaparız.
Get isteğine Json verisi dönmek için şöyle yaparız.
Post isteğine Json verisi dönmek için şöyle yaparız.
Bir nesnenin JSON'a serialize edilerek gönderilmesini sağlar. Açıklaması şöyle.
If you annotate a method with @ResponseBody, Spring will use a json mapper to generate the response. Instead of annotating every method with @ResponseBody you can annotate your class with @RestControllerAçıklaması şöyle.
@ResponseBody is a marker for the HTTP response body and @ResponseStatus declares the status code of the HTTP response.Açıklaması şöyle.
@ResponseBody annotation on the method tells Spring MVC that it does not need to render the object through a server-side view layer, but that instead the object returned is the response body, and should be written out directly.Normalde bu anotasyonu metod üzerinde tek tek kullanmak yerine tüm sınıfı @RestController olarak işaretleyip kullanmak daha iyi olabilir.
Örnek
Eğer bu anotasyonu kullanmazsak şöyle yapmamız gerekir.
@RequestMapping(value = "/search")
public ResponseEntity<String> search(BizData bizData,Page page,String sourceType){
return new ResponseEntity<>(new Gson().toJson(...), HttpStatus.OK);
}
ÖrnekŞöyle yaparız.
@PostMapping("/request_list")
@ResponseBody
public List <Staff> processCreationForm(Model model){...}
ÖrnekGet isteğine Json verisi dönmek için şöyle yaparız.
@RequestMapping(value = "/history", method = RequestMethod.GET)
public @ResponseBody Map<String, ChatModel> getHistory() {
Map<String, ChatModel> model = ...
return model;
}
Örnek
Post isteğine Json verisi dönmek için şöyle yaparız.
@RequestMapping(value="getNames", method=RequestMethod.POST)
public @ResponseBody Foo addNew(@RequestBody Foo jsonString) {
Foo foo= new Foo();
foo.setName(jsonString.getName());
return foo;
}
Hiç yorum yok:
Yorum Gönder