在SSM框架中将图片上传到数据库中的实现代码

 更新时间:2021年03月18日 09:35:10   作者:卑微小豪豪  
这篇文章主要介绍了在SSM框架中将图片上传到数据库中的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

今天我们来看看SSM中如何将图片转换成二进制,最后传入到自己的数据库中,好了,废话不多说,我们开始今天的学习,我这里用的编辑器是IDEA

1、导入图片上传需要的jar依赖包

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

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

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

2、通过form表单提交到Controller控制层中,但是需要注意一点,图片上传的请求方式必须是POST,否则会出现报错

然后在当前的JSP页面中的头部加入以下代码,防止出现中文乱码

<meta http-equiv="Content-Type" content="multipart/form-data;charset=utf-8" />

3、在自己的form表单后面加入下面这行代码,它的作用是将图片转换成二进制进行传递,但是它也有自身缺点,它会将你所有传递的信息都转换成二进制

enctype="multipart/form-data"

4、一系列工作完事之后,我们来开始写Controller控制层中的代码,图片上传路径切记要写自己的上传路径,

pictureFile这个是我的图片的传递名,这个一定要写自己的图片上传名

<label class="layui-form-label">请选择上传图片:<input type="file" name="pictureFile" class="layui-upload-file"></label>
@RequestMapping("这里写form表单提交的请求路径")
  public String shengadd(HttpServletRequest request, Sheng sheng, MultipartFile pictureFile) throws Exception {
    System.out.println("***");
    //使用UUID给图片重命名,并去掉四个“-”
    String name = UUID.randomUUID().toString().replaceAll("-", "");
    //获取文件扩展名
    String ext = FilenameUtils.getExtension(pictureFile.getOriginalFilename());
    //设置图片上传路径
    String url = request.getSession().getServletContext().getRealPath("/statics/img");
    System.out.println(url);//输出文件名
    //以绝对路径保存重命名后的图片
    pictureFile.transferTo(new File(url + "/" + name + "." + ext));
    //把图片储存路径保存到数据库
    sheng.setImg("statics/img/" + name + "." + ext);
    userService.riyongadd(sheng);
    return "redirect:/redutime.html";
  }

5、最后一项,在springmvc-servlet.xml文件中插入文件上传解析器

<!-- 定义文件上传解析器 -->
  <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!-- 设定默认编码 -->
    <property name="defaultEncoding" value="UTF-8"></property>
    <!-- 设定文件上传的最大值5MB,5*1024*1024 -->
    <property name="maxUploadSize" value="5242880"></property>
  </bean>

好了,我们开始来测试代码结果:可以看到图片已经上传到自己所需要的路径里面,也保存到了数据库中

到此这篇关于在SSM框架中将图片上传到数据库中的实现代码的文章就介绍到这了,更多相关SSM框架图片上传数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Maven清理java项目中未使用到 jar 依赖包的方法

    Maven清理java项目中未使用到 jar 依赖包的方法

    本文主要介绍了Maven清理java项目中未使用到 jar 依赖包的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-02-02
  • idea手动执行maven命令的三种实现方式

    idea手动执行maven命令的三种实现方式

    这篇文章主要介绍了idea手动执行maven命令的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 解决阿里代码规范检测中方法缺少javadoc注释的问题

    解决阿里代码规范检测中方法缺少javadoc注释的问题

    这篇文章主要介绍了解决阿里代码规范检测中方法缺少javadoc注释的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Maven的生命周期与自定义插件实现方法

    Maven的生命周期与自定义插件实现方法

    Maven的生命周期就是对所有的构建过程进行抽象和统一。包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤
    2022-12-12
  • Java Redis分布式锁的正确实现方式详解

    Java Redis分布式锁的正确实现方式详解

    这篇文章主要介绍了Java Redis分布式锁的正确实现方式详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • java 设计模式之依赖倒置实例详解

    java 设计模式之依赖倒置实例详解

    这篇文章主要介绍了java 设计模式之依赖倒置,结合实例形式详细分析了依赖倒置的相关概念、原理、使用技巧及相关操作注意事项,需要的朋友可以参考下
    2019-11-11
  • SpringBoot2 整合MinIO中间件实现文件便捷管理功能

    SpringBoot2 整合MinIO中间件实现文件便捷管理功能

    这篇文章主要介绍了SpringBoot2 整合MinIO中间件,实现文件便捷管理,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 微信小程序完整项目实战记录(前端+SpringBoot后端)

    微信小程序完整项目实战记录(前端+SpringBoot后端)

    随着微信小程序的流行,越来越多的开发者开始涉足小程序开发,下面这篇文章主要给大家介绍了关于微信小程序完整项目实战的相关资料,项目包括前端+SpringBoot后端,需要的朋友可以参考下
    2024-09-09
  • Spring学习笔记之RedisTemplate的配置与使用教程

    Spring学习笔记之RedisTemplate的配置与使用教程

    这篇文章主要给大家介绍了关于Spring学习笔记之RedisTemplate配置与使用的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用spring具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • Java+MySQL前后端连接新手小白教程

    Java+MySQL前后端连接新手小白教程

    Java作为一种广泛使用的编程语言之一,在开发Web应用程序时经常需要连接MySQL数据库进行数据操作,下面这篇文章主要给大家介绍了关于Java+MySQL前后端连接的相关资料,需要的朋友可以参考下
    2024-03-03

最新评论