我想为/persons
路径创建多个servlet。没有任何查询参数的路径应该只提供html页面(使用Thymeleaf
模板)。
带参数的那个应该用数据填充http模型。
@Controller
@RequestMapping("/persons")
public class PricingCacheController {
//default just routing to the html template
@GetMapping(params = "")
public String personsHtml() {
System.out.println("initial page load");
return "persons";
}
@GetMapping
public String personsGet(Model model, @RequestParam MyBean bean) {
System.out.println("get request");
model.addAttribute("dto", dao.findAll());
return "persons";
}
执行localhost:8080/persons
时,我找不到404
。
答案 0 :(得分:0)
你不能这样做,servlet映射是在url级别完成的,并且在解析url时会忽略查询参数,因此你必须映射相同的路径(无论查询参数)你会得到404,为什么不使用路径变量