Java 邮递员使用spring Boot JPA和db H2发布图像

Java 邮递员使用spring Boot JPA和db H2发布图像,java,spring,spring-boot,jpa,Java,Spring,Spring Boot,Jpa,有人能支持我吗?我正在做一件简单的事情,就是我正在尝试将图像保存到由邮递员上传的数据库中。我正在使用带spring boot的STS,jpa数据库是H2。我试着在纯文本上从postman获取/put/post/delete,它可以正常工作,在postman中获取图像时也可以正常工作。我在发布图像时遇到问题 模型类代码 @Entity public class Alian { @Id private int aid; private Stri

有人能支持我吗?我正在做一件简单的事情,就是我正在尝试将图像保存到由邮递员上传的数据库中。我正在使用带spring boot的STS,jpa数据库是H2。我试着在纯文本上从postman获取/put/post/delete,它可以正常工作,在postman中获取图像时也可以正常工作。我在发布图像时遇到问题

模型类代码

   @Entity
    public class Alian 
    {
        @Id
    private int aid;
    private String aname;
    @Lob
    private byte[] pic;
控制器类代码为。repo是dao类对象

 @ResponseBody 
         @RequestMapping(path="/alian",  method = RequestMethod.POST, consumes = MediaType.MULTIPART_FORM_DATA_VALUE )

         public Alian Saving(@RequestBody Alian alian, @RequestParam("file") MultipartFile file)
         {
            repo.save(alian);   
            return alian;
    }
邮递员的错误是错误的

{
    "timestamp": "2018-08-13T19:18:47.246+0000",
    "status": 415,
    "error": "Unsupported Media Type",
    "message": "Content type 'multipart/form-data;boundary=--------------------------175574471409780768513459;charset=UTF-8' not supported",
    "path": "/alian"
}

您可以使用
多部分/表单数据


请参见

确保您没有手动添加内容类型


无需手动添加内容类型标题。您正在覆盖邮递员设置的值。只需在POST请求中选择表单数据并发送您的请求,看看它是否有效。

您不能将@RequestBody与MultipartFile一起发送,您甚至不需要它。只发送多部分文件

public Alian Saving(@RequestParam("file") MultipartFile file) {
    Alian alian = new Alian();
    alian.setPic(file.getBytes());
    alian.setAname(file.getOriginalFilename());
    return repo.save(alian);
}

我不是手动添加内容类型,它是自动完成的,我只是上传图像并发送