Java Spring MVC如何回归<;选择>;值作为表单/模型值?
我可能做得不对,但我正在编写一个应用程序,它从一个带有下拉选择的简单页面开始,然后根据选择进行。当我使用SpringMVC时,我认为最简单的解决方案是将select值设置为对象本身,但它似乎返回Null 因此,初始主页控制器是Java Spring MVC如何回归<;选择>;值作为表单/模型值?,java,jsp,spring-mvc,Java,Jsp,Spring Mvc,我可能做得不对,但我正在编写一个应用程序,它从一个带有下拉选择的简单页面开始,然后根据选择进行。当我使用SpringMVC时,我认为最简单的解决方案是将select值设置为对象本身,但它似乎返回Null 因此,初始主页控制器是 @Controller @RequestMapping("/") public class HomeController extends JFrame { @Autowired private FruitDAO fruitDAO; @RequestMapping
@Controller
@RequestMapping("/")
public class HomeController extends JFrame {
@Autowired
private FruitDAO fruitDAO;
@RequestMapping(method = RequestMethod.GET)
public String HomePage(Model model) {
List<Fruit> fruit = fruitDAO.ListAll();
model.addAttribute("fruits", fruits);
return "Home";
}
@控制器
@请求映射(“/”)
公共类HomeController扩展JFrame{
@自动连线
私人水果刀;
@RequestMapping(method=RequestMethod.GET)
公共字符串主页(模型){
List fruit=fruitDAO.ListAll();
model.addAttribute(“水果”,水果);
返回“家”;
}
这将打开page Home.jsp
选择一种水果
${fruit[1]}(ID:${fruit[0]})
您应该在jsp中使用spring表单标记,而不是简单的表单标记。
也可以使用spring提供的
和所有工具
<form:form modelAttribute="fruits" method="POST">
您应该在jsp中使用spring表单标记,而不是简单的表单标记。 也可以使用spring提供的
和所有工具
<form:form modelAttribute="fruits" method="POST">
现有代码中存在一些错误:
1.在主页控制器中,您正在添加水果而不是水果(列表名称)
2.在Home.jsp的选项中,水果是变量,而不是数组 解决方案是您必须使用
form:form
,form:select
和form:option
如下所示:这里的
meeting
是您的模型属性,meetings
是您的列表
现有代码中存在一些错误:
1.在主页控制器中,您正在添加水果而不是水果(列表名称)
2.在Home.jsp的选项中,水果是变量,而不是数组 解决方案是您必须使用
form:form
,form:select
和form:option
如下所示:这里的
meeting
是您的模型属性,meetings
是您的列表
谢谢。我遵循了这个建议,但仍然有一个错误。我使用了新代码进行了编辑-有没有可能您可以快速查看一下,看看是否能发现错误?您必须使用commandName
或modeltribute
,因为两者都相同,最好使用modeltribute
。您必须传递对象名称在modelAttribute中,如meeting
,您将在action servlet(controller)中作为模型对象获得。在
标记中,您必须提到controller的action url。谢谢,实际上我的get格式不正确(getName而不是GetFrutName)谢谢。我遵循了这个建议,但仍然有一个错误。我使用了新代码进行了编辑-有没有可能您可以快速查看一下,看看是否能发现错误?您必须使用commandName
或modeldattribute
,因为两者相同,最好使用modeldattribute
。您必须在模式中传递对象名称lAttribute,如meeting
,您将在action servlet(controller)中作为模型对象获得。在
标记中,您必须提到controller的action url。谢谢,实际上我的get格式不正确(getName而非getFruitName)