Spring mvc 做图片上传
Spring MVC做图片上传:
一、配置文件中首先配置文件上传路劲;
二、首先获取配置文件路劲当中的路劲并判断路劲是否存在,不存在用File类的mkdirs()创建;(url)
三、获取文件名称(fileName);
四、保存临时文件new File(url,fileName);
五、获取相对路劲;(获取相对路劲的目的就是各个环境中配置的路劲是可变的,比如本地、测试环境、生产环境都是不同的,而数据库中存储的路劲是相同的,所以这里我们选择存储相对路劲。)
六、save..........将数据保存到数据库;
七、最后可以做页面预览啥的。
试例代码如下:
@RequestMapping("/common/o_upload_image.do")public String execute(String fileName,Integer uploadNum,Integer zoomWidth,Integer zoomHeight,@RequestParam(value = "uploadFile", required = false) MultipartFile file,HttpServletRequest request, ModelMap model) {WebErrors errors = validate(fileName, file, request);if (errors.hasErrors()) {model.addAttribute(ERROR, errors.getErrors().get(0));return RESULT_PAGE;}Website web = SiteUtils.getWeb(request); String real = applicationProperties.getUploadBasePath() + web.getUploadRel();String dateDir = FileNameUtils.genPathName();// 创建目录 File root = new File(real, dateDir);if (!root.exists()) {root.mkdirs();}// 取文件名 if (StringUtils.isBlank(fileName)) {String ext = FilenameUtils.getExtension(file.getOriginalFilename());fileName = FileNameUtils.genFileName(ext);} else {fileName = FilenameUtils.getName(fileName);}// 保存为临时文件 File tempFile = new File(root, fileName);// 相对路径 String ctx = request.getContextPath();String relPath = ctx + SPT + UPLOAD_PATH + SPT + dateDir + SPT + fileName;String basePath = applicationProperties.getDownloadBasePath();String md5 = null;model.addAttribute("zoomWidth", zoomWidth);model.addAttribute("zoomHeight", zoomHeight);try { model.addAttribute("uploadPath", relPath);model.addAttribute("uploadNum", uploadNum);model.addAttribute("basePath", basePath);byte[] buffer = getBytes(tempFile);md5=StringUtil.getMd5Hex(buffer);} catch (IllegalStateException e) {model.addAttribute(ERROR, e.getMessage());log.error("upload file error!", e);} catch (IOException e) {model.addAttribute(ERROR, e.getMessage());log.error("upload file error!", e);} imageMng.save(fileName, relPath, md5);return RESULT_PAGE;}
总结比较粗糙,欢迎大家指点,一起讨论进步!谢谢
Spring mvc 做图片上传相关推荐
- IDEA中Spring MVC实现图片上传并显示
我们都知道web项目需要部署到tomcat服务器中运行 那么,我们又是如何通过tomcat来访问存放在本地磁盘中的图片呢?,通过tomcat访问本地图片,需要配置虚拟路径,下面介绍两种配置虚拟路径的方 ...
- ajaxfileupload+spring mvc 单张图片上传
2019独角兽企业重金招聘Python工程师标准>>> //jsp页面 1.首先引入ajaxfileupload.js 2.form一定要配上enctype="multip ...
- 【报错笔记】在做图片上传时上传图片后可以跳转到上传成功界面,也没有报错,数据库中也传入了值,可是eclipse中webapp下怎样都无法生存目录。
在做图片上传时上传图片后可以跳转到上传成功界面,也没有报错,数据库中也传入了值,可是eclipse中webapp下怎样都无法生存目录. 我使用UUID生成8级目录,在webapp下创建目录,将图片传进 ...
- Spring MVC 3:上传多个文件
只是在办公室又漫长的一天,数据库不可用,一个团队成员现在滞后一周. 因此,我们必须作为一个团队来交付它. 在Spring3,它看起来很直接上传文件. 但是,从jsp文件上载多个文件几乎没有帮助. 上载 ...
- Mr.张小白(案例:基于Spring MVC实现文件上传和下载)
基于Spring MVC实现文件上传和下载 一.步骤 1.引入相关依赖pom.xml <?xml version="1.0" encoding="UTF-8&quo ...
- input做图片上传限制图片大小1M以内
input 属性type=file;定义输入字段和 "浏览"按钮,供文件上传. 1.做图片上传可配合中使用 accept 属性来限制图片的格式. 注意 accept 属性只能与 配 ...
- .net mvc + layui做图片上传(二)—— 使用流上传和下载图片
摘要:上篇文章写到一种上传图片的方法,其中提到那种方法的局限性,就是上传的文件只能保存在本项目目录下,在其他目录中访问不到该文件.这与浏览器的安全性机制有关,浏览器不允许用户用任意的路径访问服务器上的 ...
- Java做图片上传、文件上传、 批量上传、 Base64图片上传 。附上源码
Java做文件上传.图片上传后台方法 利用Springboot快速搭建项目环境 项目源码已经上传到码云:https://gitee.com/jack_party/upload .喜欢的朋友可以支持一下 ...
- java图片加水印上传工具类_基于Spring Boot实现图片上传/加水印一把梭操作
文章共537字,阅读大约需要 2分钟 ! 概述 很多网站的图片为了版权考虑都加有水印,尤其是那些图片类网站.自己正好最近和图片打交道比较多,因此就探索了一番基于 Spring Boot这把利器来实现从 ...
最新文章
- Windows Mobile 7 梦幻之旅系列1之- What’s New?
- 网站权重增加需要做的
- gsonformat安装怎么使用_IDEA中使用GsonFormat
- .NET6 新功能和新生态
- cdh mysql sqoop 驱动_大数据技术之Sqoop学习——原理、安装、使用案例、常用命令...
- 日本词汇的认识与理解
- android nexus 6尺寸,谷歌Nexus 6详细配置曝光 原生Android大杀器
- html_jQuery_ajax
- Linux内核空间与用户空间信息交互方法
- 使用jrtplib(RTP)传输H.264视频文件
- 第九届蓝桥杯JavaA组省赛真题
- 网页在线视频播放大全
- 切西瓜(空间划分问题)
- 城市内涝一维二维耦合技术及在城市排水防涝领域中的实践应用
- (转)虎扑论坛基因探秘:社群用户行为数据洞察
- 计算机图形学 绘制正四面体
- 基于用户组织角色权限和资源的五要素
- 无胁科技-TVD每日漏洞情报-2022-8-1
- 福建公共交易平台portal-sign
- Java~二叉树的前中后序遍历的几种方式(递归法,迭代法,标记法等)