场景复现

分析:
其实这是两给表,一个内容表,一个图片表,一对多的关系。
解决思路:
1. 先上传图片拿到图片的List集合ids,返回值是集合的ids,给到前端
2. 再添加内容表的数据生成了id,遍历查询拿到的图片集合ids,再对象里面,设置内容id,保存对象。
业务层
图片上传
    /***
     *  返回数组图片的 集合 id
     * @param file
     * @return
     */
    @PostMapping("/insertImg")
    public R<List<Integer>> insertImg(MultipartFile[] file) {
        return exFeedbackService.insertImg(file);
    } 
    @Override
    public R<List<Integer>> insertImg(MultipartFile[] file) {
        ArrayList<Integer> ids = new ArrayList<>();
        // 循环遍历删除,添加图片数据
        for (MultipartFile files : file) {
            String fileName = files.getOriginalFilename();
            try {
                MinIOUtils.uploadFile(minIOConfig.getBucketName(), fileName, files.getInputStream());
            } catch (Exception e) {
                throw new RuntimeException("上传minio图片失败");
            }
            // 图片url路径
            String imgUrl = MinIOUtils.getBasisUrl() + fileName;
            // 添加图片数据
            ExImg exImg = new ExImg();
            exImg.setImgUrl(imgUrl);
            exImg.setImgName(fileName);
            // 循环添加数据
            exImgMapper.insert(exImg);
            // 批量添加id
            ids.add(exImg.getId());
        }
        return R.success(ids);
    } 
内容保存
    /**
     * @param: ExFeedback , MultipartFile
     * @return:void
     * @Date:2024/5/12 反馈内容模块添加数据
     */
    @PostMapping("/insertInfo")
    public R<Void> insertInfo(@RequestBody ExFeedback exFeedback) {
        return exFeedbackService.insertInfo(exFeedback);
    }
 
    /**
     * @param: ExFeedback , MultipartFile
     * @return:void
     * @Date:2024/5/12 反馈内容模块添加数据 & 图片
     */
    @Override
    public R<Void> insertInfo(ExFeedback exFeedback) {
        // 添加反馈内容表数据
        int insert = exFeedbackMapper.insert(exFeedback);
        // 图标的list集合id
        List<Integer> ids = exFeedback.getIds();
        ids.forEach(re -> {
            // 查出的每条数据
            ExImg exImg = exImgMapper.selectById(re);
            // 每条数据set 反馈内容id
            exImg.setFeedbackId(exFeedback.getId());
            // 保存id
            exImgMapper.updateById(exImg);
        });
        return R.success();
    } 
 
(注意内容表实体类有List<Integer> ids 字段)









![NSSCTF | [第五空间 2021]WebFTP](https://img-blog.csdnimg.cn/direct/5a2f9086ba2746748269cf5d2d68cacb.png)









