当前位置: 首页 > 知识库问答 >
问题:

Rest API java spring-将文本和pdf上传到PostgreSQL数据库(邮递员-表单数据)

公德明
2023-03-14

我尝试了什么:将其添加到@PostMapping()-->没有成功

consumes = MediaType.MULTIPART_FORM_DATA_VALUE

在Postman中:添加了content-type:application/jsoncontent-type:multipart/form-data

他们两个都没有成功:(...

@RestController
public class SheetMusicController {

    @Autowired
    SheetMusicRepository sheetMusicRepository;

    @GetMapping("/sheetmusic")
    public List<SheetMusic> index(){
        return sheetMusicRepository.findAll();
    }

    @PostMapping(value = "/sheetmusic")
    public SheetMusic create(@RequestBody Map<String,String> body){
        String title = body.get("title");
        byte[] pdf = "".getBytes();

        SheetMusic sheetMusic = new SheetMusic(title,"","","",pdf);
        return sheetMusic;
    }
}

问候,

共有1个答案

孙成益
2023-03-14

您应该实现一个多部分form-data请求:

首先,您需要向Maven添加:

<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.3.1</version>
</dependency>

其次,您需要添加以下bean配置:

@Bean(name = "multipartResolver")
public CommonsMultipartResolver multipartResolver() {
    CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver();
    multipartResolver.setMaxUploadSize(100000);
    return multipartResolver;
}
@PostMapping(value = "/sheetmusic")
public SheetMusic create(@RequestParam("file") MultipartFile file, @RequestParam("title") String title) {
    // Your business
}
 类似资料:
  • 我是PHP新手,不知道自己做错了什么。我可以打开html表单并提供数据,但当我点击submit时,它会显示php代码,并且数据库(显然)没有更新。我已经尝试过通过phpMyAdmin手动将值插入表中,并且效果很好。我在网上看过,但我的语法看起来不错。我做错什么了吗?如果错误不太明显,是否有有效的调试方法(即查看错误)? 我有超文本标记语言代码 这是PHP代码 这张表位于phpMyAdmin的数据库

  • 我正在尝试为博客上的帖子创建一个评论系统。我创建了一个上传评论的表单。表中正确填充了user_id和post_id列,但是,在输入文本并提交时,body列为空。我定义了一种关系,一篇帖子有很多评论。此外,我还定义了一个用户有许多注释。这是我的密码: 表格: 我现在还不关心显示评论,只是把它们上传到数据库。用户id和post id正确上传到数据库中,文本不会保存。提前谢谢。

  • 我无法将数据从postman发布到我正在使用的mysql数据库express 我尝试过使用Body和Raw x-www-form-urlencoded 这是我的代码(是的,所有内容都在同一个文件中,我知道这不是一件好事,我很抱歉) 这是我在邮递员和数据库中的截图错误

  • 我在视窗7中使用IntelliJ IDEA 12、JDK 7、MyBatis、Spring 3来创建REST网络应用程序(带有flyway-maven-plugin的Maven项目)。我使用Flyway来处理sql迁移。现在我需要将一些文件加载到PostgreSQL 9.2数据库。我找到了这个线程:https://dba.stackexchange.com/questions/1742/how-t

  • 问题内容: 对于javascript / ajax,我是一个真正的菜鸟,因此对您的帮助将非常感激 但主要关注菲尔·萨克雷留下的答案。我想知道是否有人可以详细说明我们如何(如果可以的话)使用jquery通过他的示例传递值/数据。他留下的代码示例如下: 例如,我们要使用php将任意数量的值传递给数据库,有人可以给我一个有关javascript函数所需内容的摘要示例吗?或详细说明上面发布的内容? 再次谢

  • 如何使用POSTMAN对具有自定义头的多部分/表单数据进行测试,以2个文件为参数的控制器()?