Giriş
URL'deki ? karakterinden sonra gelen parametrelerin koddaki değişkenlere bağlanmasını sağlar. Açıklaması şöyle.
URL şöyle olsun
Elimizde şöyle bir form olsun. Burada HTML form tag'ine method tanımlanmıyor. Form varsayılan değer olarak GET isteği gönderdiği için parametreler URL'ye eklenir.
Şöyle yaparız.
URL'deki ? karakterinden sonra gelen parametrelerin koddaki değişkenlere bağlanmasını sağlar. Açıklaması şöyle.
ÖrnekYou can use the @RequestParam annotation to bind Servlet request parameters (that is, query parameters or form data) to a method argument in a controller.
URL şöyle olsun
http://localhost:8080/calculation/pow?base=2&ext=4
Şöyle yaparız.@RequestMapping(value="/pow", method=RequestMethod.GET)
public int pow(@RequestParam(value="base") int base1,alo
@RequestParam(value="ext") int ext1){
...
}
Örnek
Tek tek parametreler yerine her şeyi bir nesneye de bağlayabiliriz. Şöyle yaparız
/v1/customers?cities=Sioux Falls-SD,Chicago-IL
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CityStateRequestParamDTO {
private String city;
private String state;
}
Örnek - Form ile Get
<form action="/list">
<select name="tableName">
<option value="employees">Employees</option>
<option value="contracts">Contracts</option>
</select>
<input type="submit" value="Submit" />
</form>
Şöyle yaparız.@RequestMapping(value = "/list", method = RequestMethod.GET)
public String getTables(Model m, @RequestParam("tableName") String tableName) {
//findAll here
return "home";
}
required seçeneğiŞöyle yaparız.
@RequestMapping(value = "/test", method = RequestMethod.POST)
public void test(@RequestParam(required= false) String fromDate,
@RequestParam(required= false) String toDate) {
}
Hiç yorum yok:
Yorum Gönder