gpt4 book ai didi

java - 在不使用 Spring
tag? 的情况下使用 Spring MVC 处理表单

转载 作者:行者123 更新时间:2023-11-30 06:08:19 27 4
gpt4 key购买 nike

是否可以使用 Spring 注释处理表单 @ModelAttribute不使用 Spring 标签 <form:form...> .我看到这个way to do但是使用 Thymeleaf 似乎很复杂(我对此一无所知)。

Spring 应该是一个非侵入式框架,那么我的问题是否有替代解决方案?

最佳答案

如果您使用 Spring 标记构建表单,它将被转换为 HTML。运行您的项目并检查您的 JSP 站点的源代码。 Spring 标签只是让编码人员的事情变得更容易一些。例如

<form:form modelAttribute="newUser" action="/addUser" method="post">
<form:input path="firstName" />
<form:input path="lastName" />
<button type="submit">Add</button>
</form:form>

将转换为 HTML

<form id="newUser" action="/addUser" method="post">
<input id="firstName" name="firstName" type="text" value="" />
<input id="lastName" name="lastName" type="text" value="" />
<button type="submit">Add</button>
</form>

例如,在 Controller 中,您将数据传输对象 (DTO) 添加到 Model

@RequestMapping(value = "/index", method = RequestMethod.GET)
public ModelAndView homePage() {
ModelAndView model = new ModelAndView();
model.addObject("newUser", new User());
model.setViewName("index");
return model;
}

并接收表单数据

@RequestMapping(value = "/addUser", method = RequestMethod.POST)
public ModelAndView addUser(
@ModelAttribute("newUser") User user) { ... }

只要表单字段的命名与您的 bean 对象(这里是 User 类)和模型中的命名完全相同,使用 Spring 标签是完全可选的。

关于java - 在不使用 Spring <form :form> tag? 的情况下使用 Spring MVC 处理表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40047270/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com