Có thể sử dụng nhiều @RequestMapping
chú thích trên một phương thức không?
Giống :
@RequestMapping("/")
@RequestMapping("")
@RequestMapping("/welcome")
public String welcomeHandler(){
return "welcome";
}
Có thể sử dụng nhiều @RequestMapping
chú thích trên một phương thức không?
Giống :
@RequestMapping("/")
@RequestMapping("")
@RequestMapping("/welcome")
public String welcomeHandler(){
return "welcome";
}
@RequestMapping
có một String[]
tham số giá trị, vì vậy bạn có thể chỉ định nhiều giá trị như sau:
@RequestMapping(value={"", "/", "welcome"})
Từ thử nghiệm của tôi (mùa xuân 3.0.5), @RequestMapping(value={"", "/"})
- chỉ "/"
hoạt động, ""
không. Tuy nhiên, tôi phát hiện ra điều này hoạt động:, @RequestMapping(value={"/", " * "})
các " * "
khớp với bất kỳ thứ gì, vì vậy nó sẽ là trình xử lý mặc định trong trường hợp không có người khác.
Không cần thiết. Chú thích RequestMapping hỗ trợ các ký tự đại diện và đường dẫn kiểu antoàn. Cũng có vẻ như bạn chỉ muốn một chế độ xem mặc định, vì vậy bạn có thể đặt
<mvc:view-controller path="/" view-name="welcome"/>
trong tệp cấu hình của bạn. Điều đó sẽ chuyển tiếp tất cả các yêu cầu tới Root đến chế độ xem chào mừng.
Con đường ngắn nhất là: @RequestMapping({"", "/", "welcome"})
Mặc dù bạn cũng có thể làm:
@RequestMapping(value={"", "/", "welcome"})
@RequestMapping(path={"", "/", "welcome"})
Ngay bây giờ với việc sử dụng Spring-Boot 2.0.4 - {} sẽ không hoạt động.
@RequestMapping
vẫn có String [] làm tham số giá trị, vì vậy khai báo trông như thế này:
@RequestMapping(value=["/","/index","/login","/home"], method = RequestMethod.GET)
** Cập nhật - Hoạt động với Spring-Boot 2.2 **
@RequestMapping(value={"/","/index","/login","/home"}, method = RequestMethod.GET)
Những điều sau đây cũng được chấp nhận:
@GetMapping(path = { "/{pathVariable1}/{pathVariable1}/somePath",
"/fixedPath/{some-name}/{some-id}/fixed" },
produces = "application/json")
Tương tự có thể được áp dụng cho @RequestMapping
cùng
Tốt hơn là sử dụng chú thích PathVariable nếu bạn vẫn muốn lấy đi tiểu đã được gọi.
@PostMapping("/pub/{action:a|b|c}")
public JSONObject handlexxx(@PathVariable String action, @RequestBody String reqStr){
...
}
hoặc phân tích cú pháp nó từ đối tượng yêu cầu.