आदर्श रूप में हम विधि तर्क में एनोटेशन @PathVariable
का उपयोग करके pathvariable प्राप्त कर सकते हैं लेकिन यहाँ आप यूआरएल {"/userDetails", "/userDetails/edit/{id}"}
की सरणी का इस्तेमाल किया है तो यह त्रुटि दे देंगे localhost:8080/domain_name/userDetails
की तरह आपूर्ति अनुरोध, इस मामले में कोई आईडी @PathVariable को आपूर्ति की जाएगी, जबकि।
तो तुम विधि में अनुरोध तर्क HttpServletRequest का उपयोग करके अंतर (जो अनुरोध के माध्यम से आ रहा है) हो जाते हैं और नीचे के रूप में इस अनुरोध को वस्तु का उपयोग कर सकते हैं -
स्ट्रिंग uri = request.getRequestURI();
@RequestMapping(value = {"/userDetails", "/userDetails/edit/{id}"}, method=RequestMethod.GET)
public String userDetails(Map Model,HttpServletRequest request) {
String uri = request.getRequestURI();
//put the condition based on uri
}
स्रोत
2012-04-09 11:40:58
डुप्लिकेट की [इस सवाल] (http://stackoverflow.com/questions/2745471/spring-web-mvc-use-same-request-mapping-for- -
कोड इस तरह है अनुरोध-पैरामीटर-और-पथ-चर) – nobeh