By using the @PathVariable annotation you can create the dynamic varible at the url and can access that varible from there as.
/*
* Here pathVar is the new path variable when it finds the
* /param/process-form/pathVar it is copies by the @PathVariable into the
* pathVar variable.
* try url as when you are running application '/PathVariableAnnotation/param/client-req/productName'
*/
@RequestMapping(value = "/client-req/{pathVar}")
public String processReq(Model model,
@PathVariable("pathVar") String pathVar) {
model.addAttribute("pathVar", pathVar);
return "view-data";
}
Please consider the complete controller class given below
SampleInterfaceImp.java
package roseindia.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping(value = "/param/")
public class ApplicationController {
/*
* Here pathVar is the new path variable when it finds the
* /param/process-form/pathVar it is copies by the @PathVariable into the
* pathVar variable.
* try url as when you are running application '/PathVariableAnnotation/param/client-req/productName'
*/
@RequestMapping(value = "/client-req/{pathVar}")
public String processReq(Model model,
@PathVariable("pathVar") String pathVar) {
model.addAttribute("pathVar", pathVar);
return "view-data";
}
/*
* By using @PathVariable you can also add new variable between the URL.
* try url as when you are running application '/PathVariableAnnotation/param/product/YourNewVarible/information'
*/
@RequestMapping(value = "/product/{productName}/information")
public String anotherReq(Model model,
@PathVariable("productName") String productName) {
model.addAttribute("productName", productName);
return "view-data";
}
}
You can download the complete source code from here
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.