Bağlamdan sonra herhangi bir dizeyi işleyen bir eşleme isteği eşleme ör. aşağıdaki gibi www.example.com/anystringİlkbaharda @RequestMapping'deki url eşlemeleri nasıl hariç tutulur?
bunu hallediyorum:
@RequestMapping(value="/{str}", method = RequestMethod.GET)
public String getApp(@PathVariable("str") String anyString, ModelMap model) {
//Do something
}
sorun URL olduğu şöyle benim app 2-3 URL'ler ettik geçerli: www .example.com/www.example.com/contact, hakkında vb şöyle Onlar için talep Eşlemeleri'ni yazdı
:
@RequestMapping("/about")
public String getAboutPage() {
return "about";
}
Açıkçası, zaten herhangi bir dizenin getApp()
tarafından ele alınması gerektiğini bildirdiğinden beri, getAboutPage()
hiçbir zaman çalıştırılamaz. getApp()
eşlemesinden /about
, /contact
vb. Nasıl hariç tutabilirim? Açık bir şekilde URL dizisine başka bir anahtar kelime ekleyebiliriz, ancak uygulama kullanım durumumda bu mümkün değil. Nazik yardım. :(
DÜZENLEME:?
Sadece gibi getApp()
iç /about
, /contact
işlemek olmalı:
@RequestMapping(value="/{str}", method = RequestMethod.GET)
public String getApp(@PathVariable("str") String anyString, ModelMap model) {
if(anyString.equals("about")){
//do about related stuff
}
if(anyString.equals("contact")){
//do contact related stuff
}
//Do something
}
HTTP istek yöntemini belirtme daha iyi bir yolu
Daha fazla okunabilirlik için düzenleme için teşekkürler @Sazzadur. – LittleLebowski