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

网友投稿 346 2023-01-26

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

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

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

commons-io

commons-io

2.4

commons-io

commons-io

1.4

commons-fileupload

commons-fileupload

1.3.1

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

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

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

enctype="multipart/form-data"

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

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

@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());

//设置图片上Bsecl传路径

String url = request.getSession().getServletContext().getRealPath("/statics/img");

System.out.println(url);//输出文件名

//以绝对路径保存重命名后的图片

Bsecl pictureFile.transferTo(new File(url + "/" + name + "." + ext));

//把图片储存路径保存到数据库

sheng.setImg("statics/img/" + name + "." + ext);

userService.riyongadd(sheng);

return "redirect:/redutime.html";

}

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

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

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:电影api接口还能用吗(影院api接口)
下一篇:股票接口api(股票接口 对散户开放)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~