Java SpringMVC3URL初学者

Java SpringMVC3URL初学者,java,spring,spring-mvc,Java,Spring,Spring Mvc,我编写了以下代码: @Controller @RequestMapping("/test") public class Home { @RequestMapping(value = "index") public String index() { return "index"; } @RequestMapping(value = "welcome") public String welcome(@RequestParam("txtname") String name, ModelMa

我编写了以下代码:

@Controller
@RequestMapping("/test")
public class Home {

@RequestMapping(value = "index")
public String index() {
    return "index";
}

@RequestMapping(value = "welcome")
public String welcome(@RequestParam("txtname") String name, ModelMap model) {
    model.addAttribute("msg", name);
    return "index";
}

}
现在我有两个疑问。我想要像/test这样的东西直接加载index()。现在我必须输入/测试/索引。我如何配置它

其次,index()和welcome()几乎相同。只需将请求参数添加到输出。我之所以编写index(),是因为如果没有参数,/welcome将不起作用。我想让txtname成为可选的或者类似的东西,这样就可以删除欢迎

我想要像/test这样的东西直接加载index()。现在我必须输入/测试/索引

只需跳过额外的映射:

@RequestMapping
public String index() {
    return "index";
}

我想让txtname成为可选的或者类似的东西,这样就可以删除欢迎

试试这个:

@RequestParam(value = "txtname", required = false)
此外,还可以简化您的
welcome()
方法:

@RequestMapping(value = "welcome")
public String welcome(@RequestParam("txtname") String name) {
    return new ModelAndView("index", "msg", name);
}

您可以尝试将@RequestParam设置为required=false:@RequestParam(value=“txtname”,required=false)