flame.liu 2023-06-07 21:37 采纳率: 75%
浏览 77
已结题

使用spring-web 6版本,在SSM项目中上传图片错误

SSM项目中关于图片上传的错误。
首先在pom文件中采用spring-web 6,然后引用了上传文件必须的两个jar,部分代码如下:

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>6.0.6</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>6.0.9</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>6.0.6</version>
        </dependency>

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

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.11.0</version>
        </dependency>

然后在spring-config.xml文件中配置文件上传对象

    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="defaultEncoding" value="utf-8"/>
        <property name="maxUploadSize" value="500000"/>
    </bean>

发现上面代码中commons.CommonsMultipartResolver,defaultEncoding,maxUploadSize被标红色编译不通过,
后来检查外部库中:org.springframework.web.multipart确实不存在commons.CommonsMultipartResolver。
查到网上有说到把spring-web的版本改到5.0的,发现改了之后确实有org.springframework.web的5.0版本中有CommonsMultipartResolver这个对象了,但是项目之前都已经做了一部分,改成5.0后其它地方出错了。
这里想请问各位大咖,spring-web 6.0.6版本应该怎么实现文件上传的对象?

  • 写回答

1条回答 默认 最新

  • 程序yang 全栈领域优质创作者 2023-06-08 09:47
    关注

    以 Spring Framework 5 为基础的文件上传配置在 Spring Framework 6 中已经不再使用 CommonsMultipartResolver。

    在 Spring Framework 6 中,建议使用新的 StandardServletMultipartResolver,它是基于 Servlet 3.0 javax.servlet.http.Part 接口实现的。以下是一个示例配置:

    仅供参考(Spring Framework 6 还引入了新的 MultipartResolver 接口,您可以自定义实现以适应特定的文件上传需求。)

    <bean id="multipartResolver" class="org.springframework.web.multipart.support.StandardServletMultipartResolver">
        <property name="maxUploadSize" value="500000" />
        <property name="maxInMemorySize" value="4096" />
    </bean>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月20日
  • 已采纳回答 6月12日
  • 创建了问题 6月7日

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作