I need to handle requests as following:
www.example.com/show/abcd/efg?name=alex&family=moore (does not work)
www.example.com/show/abcdefg?name=alex&family=moore (works)
www.example.com/show/abcd-efg?name=alex&family=moore (works)
It should accept any sort of character from the value that is located between www.example.com/show/
and ?
. Please note the value that would be located there would be a single value not name of an action.
For example: /show/abcd/efg
and /show/lkikf?name=Jack
in which the first request should redirect user to the page abcd/efg
(because thats a name) and the second one should redirect user to the page lkikf
along with value of parameter name.
I have following controller to handle it but the issue is when I have / in the address the controller is unable to handle it.
@RequestMapping(value = "/{mystring:.*}", method = RequestMethod.GET)
public String handleReqShow(
@PathVariable String mystring,
@RequestParam(required = false) String name,
@RequestParam(required = false) String family, Model model) {
I used following regex which did not work.
/^[ A-Za-z0-9_@./#&+-]*$/
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…