29 Ağustos 2018 Çarşamba

SpringMVC @RequestMapping Anotasyonu

Giriş
Şu satırı dahil ederiz.
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
Get veya Post için kullanılabilir. Sınıf @RestController olarak işaretlidir. Bu anotasyon ilgili metodun bir REST servis noktası olmasını sağlar.
path Alanı 
1. Değişken Yol İse
Açıklaması şöyle.
Patterns in @RequestMapping annotations support ${…​} placeholders against local properties and/or system properties and environment variables. This may be useful in cases where the path a controller is mapped to may need to be customized through configuration.
Örnek
application.properties dosyasına şu satırı ekleriz
super.admin.path=whatever
Şöyle yaparız.
@RestController
@RequestMapping("/${super.admin.path:admin}") 
class AdminController {
  // Same as before
}

2. Sabit Yol İse
Örnek
Şöyle yaparız.
@RequestMapping("/")
public String getWelcome() {
  return "Hello";
}
Örnek
Get metodunda id alanına erişmek için şöyle yaparız.
@RequestMapping("/topics/{id}")
public Topic getTopicById(String id) {
  return topicService.getTopicbyId(id);
}
Örnek
Post metodunda id alanına erişmek için şöyle yaparız.
@RequestMapping(method=RequestMethod.POST, value="/topics/{id}")
public void putTopic(Topic topic) {
  topicService.putTopic(topic);
}
Örnek - dizi içindeki nesnenin alanı
Get metodunda dizi elemanının alanına erişmek için şöyle yaparız.
@RequestMapping("/booking/{results[0].flightscheduleId}")
public String bookBoardingPass
  (@PathVariable("results[0].flightscheduleId") Integer flightId, HttpSession session) {
  ...
  return "...";
}

Hiç yorum yok:

Yorum Gönder