我想在Spring Boot中将图像和JSON数据发送到后端。 这是我的方法:
@PostMapping
public void uploadFile(@ModelAttribute FileUploadDto fileUploadDto) {
我的FileUploadDto模型:
public class FileUploadDto {
private MultipartFile file;
private CategoryModel category;
我的CategoryModel模型:
@Entity
@Table(name = "Category")
@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" })
public class CategoryModel {
@Id
@Column(name = "id")
//@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String category_name;
private String category_description;
private String image_path;
@JsonIgnore
@OneToMany( mappedBy = "category")
private Set<ProductModel> category;
我不明白我在哪里错。
答案 0 :(得分:1)
您的有效载荷必须是原始的并且为json格式。这样的事情将有助于Spring Boot将有效负载转换为示例类的对象:
public class Foo{
public String foo;
public String foo1;
//Getters setters
}
以及请求处理方法:
@PostMapping
public void uploadFile(@RequestBody Foo foo)
还建议将有效负载解析为一些临时类,然后将临时类的对象转换为Entity类,反之亦然。看看:https://struberg.wordpress.com/2012/01/08/jpa-enhancement-done-right/了解更多信息
此外,如果您要根据REST上传文件,我也建议您查看以下文档:https://www.callicoder.com/spring-boot-file-upload-download-rest-api-example/
祝你好运。