gpt4 book ai didi

java - Spring MVC - 使用对象请求参数进行表单处理

转载 作者:行者123 更新时间:2023-12-02 04:39:35 25 4
gpt4 key购买 nike

假设我的应用程序中有以下实体:

public class Payment {
private Long id;
private Service service;
private User user;
private BigDecimal amount;
}

public cass Service {
private Long id;
private String name;
private BigDecimal minAmount;
private BigDecimal maxAmount;
}

public class User {
private Long id;
private String login;
private String password;
private BigDecimal balance;
}

我需要创建允许用户处理付款的 html 表单(Payment 类的实例)。所以我需要在我的 Controller 方法中创建 Payment 实例。我知道我可以添加到 Controller 方法,例如 Service service 参数,它将由表单中具有相同名称的值填充。但是我怎样才能获得填充的 Payment 对象呢?填充了 ServiceUser 对象?我需要以某种方式将整个 Service 对象保存在我的服务器页面中?如何?如果重要的话,我使用 Thymeleaf。

最佳答案

在 thymeleaf 文件中,只要您尊重类的字段结构,Spring 就应该足够智能来填充不同的字段。

<form th:object="${payment}" th:action="@{/sendPayment}" method="post">
<input type="text" th:field="*{id}"/>
<input type="text" th:field="*{service.name}"/>
<input type="text" th:field="*{user.id}"/>
<button type="submit">Submit</button>
</form>

然后在您的 Controller 上,您只需传递 Payment 对象即可:

@RequestMapping(value = "/sendPayment", method = RequestMethod.POST)
public String processPayment(final Payment payment){
doSomethingWithPayment(payment);
}

关于java - Spring MVC - 使用对象请求参数进行表单处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30330666/

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