gpt4 book ai didi

java - 有没有一种方法可以解析多部分发布请求值并将它们保存到值对象中,而无需大量循环/ifs?

转载 作者:行者123 更新时间:2023-12-01 14:22:54 27 4
gpt4 key购买 nike

我有一个由多部分组成的帖子表单,要求用户在文本字段中输入一些基本信息。用户可以选择上传视频文件或输入 YouTube 链接。

我让上传部分正常工作,我使用 ServletFileUpload 将文件保存到服务器,然后将其上传到 S3。我在如何从表单的文本字段获取值而不经过许多循环并检查字段名称以尝试将它们与值对象的字段匹配的情况下遇到了麻烦。

示例:

假设我有实体文件:

public class Video {
private String name;
private String url;
private String description;
private Video() {}

public Video(String, String, String) {
this.field = value; ...
}
}

形式是这样的:

<form method="POST" action="/member/uploadVideo" enctype="multipart/form-data">
<input name="name" type='text'/>
<input name="file" type='file'/>
<input name="url" type='text'/>
<input name="description" type='text'/>
</form>

在后端,我正在做这样的事情:

 for (Object item : items) {
fileItem = (FileItem) item;
if (fileItem.isFormField()) {
logger.info(fileItem.getName() + " : " + fileItem.getString());
} else if (!fileItem.isFormField() && (fileItem.getName() != null && !fileItem.getName().isEmpty())) {
uploadedFile = fileItem;
}
}

如何轻松获取文本字段值并创建新的 Video(),而无需循环并执行 ifs 来查看字段名称是否与 Video() 的字段匹配?

最佳答案

一种方法(不是最好的方法)是将表单字段值保存到 HashMap ,然后使用一种方法使用该 HashMap 重建值对象。

关于java - 有没有一种方法可以解析多部分发布请求值并将它们保存到值对象中,而无需大量循环/ifs?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17391694/

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