java 图片上传
代码是最有力量的,嘎嘎 @CrossOrigin
@ApiOperation(value = "上传图片", notes = "上传图片", httpMethod = "POST")
@ApiImplicitParam(name = "file", value = "图片路径", required = true, dataType = "file")
@ResponseBody
@PostMapping("/uploadImage")
public ResultSet uploadImage(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request)
throws IOException {
// 上传的图片只允许是 png 或者jpg 中的格式
if (file.getOriginalFilename().contains(".png") || file.getOriginalFilename().contains(".jpg")) {
// 根据相对路径转化为真实路径
String rootpath = request.getSession().getServletContext().getRealPath(File.separator);// 获得web应用的绝对路径
File createFile = new File(rootpath + "/image/");
if (!createFile.exists()) {// 判断文件是否存在如果不存在则自动创建文件夹
createFile.mkdir();
}
//String uuid = IdGen.uuid() + "_";// 随机生成一个唯一性的id 确保apk文件重名
File f = new File(rootpath + "/image/" + file.getOriginalFilename());
if (f.exists()) {//上传的文件已经存在,则提示用户重新上传 apk 或者重命名
return ResultSet.getFail("文件已经存在,请重新上传或者重命名");
} else {
System.out.println(rootpath);
file.transferTo(f); // 将上传的文件写入到系统中 return ResultSet.getSuccess(rootpath +"/image/" + file.getOriginalFilename());
}
} else {
return ResultSet.getFail("上传文件失败");
}
} 另一种
@RequestMapping(value="/uploadPictures",method=RequestMethod.POST)
public Object uploadHeadPic(@RequestParam("file")CommonsMultipartFile file,InputStream inputStream,HttpServletRequest request) {
String uuid = UUID.randomUUID().toString().trim();
String fileN=file.getOriginalFilename();
int index=fileN.indexOf(".");
String fileName=uuid+fileN.substring(index);
try {
File fileMkdir=new File("F:\\photoTest");
if(!fileMkdir.exists()) {
fileMkdir.mkdir();
}
//定义输出流 将文件保存在D盘 file.getOriginalFilename()为获得文件的名字
FileOutputStream os = new FileOutputStream(fileMkdir.getPath()+"\\"+fileName);
InputStream in = file.getInputStream();
int b = 0;
while((b=in.read())!=-1){ //读取文件
os.write(b);
}
os.flush(); //关闭流
in.close();
os.close();
} catch (Exception e) {
return Result.getFail("图片上传失败);
}
return Result.getSuccess(fileN);
}
用到代码的小伙伴给我点个赞呀
java 图片上传的更多相关文章
- java图片上传(mvc)
最近有开始学起了java,好久没写文章了,好久没来博客园了.最近看了看博客园上次写的图片上传有很多人看,今天在一些篇关于java图片上传的.后台接收用的是mvc.不墨迹了,直接上图. 先看目录结构.i ...
- js 利用iframe和location.hash跨域解决的方法,java图片上传回调JS函数跨域
奶奶的:折腾了我二天,最终攻克了!网上有非常多样例. 但跟我的都不太一样,费话不多说了,上图 上代码: IE ,firefix,chrome 測试通过 js :这个主页面,部分代码, functi ...
- java图片上传,通过MultipartFile方式,如果后台获取null检查是否缺少步骤
本方法基于springMvc 1.首先需要在webap下创建images 2.在springmvc.xml上引入 <bean id="multipartResolver" c ...
- Java图片上传压缩处理
所需要的jar包在:\jdk1.7.0_25\jre\lib\rt.jar里面 package util; import java.awt.Image; import java.awt.image.B ...
- java图片上传及图片回显1
目的:选择图片,进行图片回显之后将图片保存到服务器上(PS:没有使用任何插件,样式很丑) 实现方式: js+servlet+jsp的方式来实现 事先准备: 文件上传处理在浏览器中是以流的形式提交到服务 ...
- UEditor之实现配置简单的图片上传示例
UEditor之实现配置简单的图片上传示例 原创 2016年06月11日 18:27:31 开心一笑 下班后,阿华到楼下小超市买毛巾,刚买完出来,就遇到同一办公楼里另一家公司的阿菲,之前与她远远的有过 ...
- java web图片上传和文件上传
图片上传和文件上传本质上是一样的,图片本身也是文件.文件上传就是将图片上传到服务器,方式虽然有很多,但底层的实现都是文件的读写操作. 注意事项 1.form表单一定要写属性enctype=" ...
- java web开发 图片上传功能
基本思路在于,配置路径,然后用java I/O的api将图片上传到该目录下. String photoPath = ServletActionContext.getServletContext( ...
- Java Struts图片上传至指定文件夹并显示图片
继上一次利用Servlet实现图片上传,这次利用基于MVC的Struts框架,封装了Servlet并简化了JSP页面跳转. JSP上传页面 上传一定要为form加上enctype="mult ...
随机推荐
- [read -p应用]插拔光模块去检查port present状态
#!/bin/bash path="/sys/devices/platform/soc/fd880000.i2c-pld/i2c-0/i2c-4/i2c-15/15-0060" a ...
- Java基础知识笔记第五章:子类与继承
子类与父类 子类 class 子类名 extends 父类名{ ....... } 类的树形结构 子类的继承性 子类和父类在同一包中的继承性 子类继承了父类不是private的成员属性和成员方法 ...
- oracle SQL 练习
COURSE 表 DROP TABLE "SCOTT"."course"; CREATE TABLE "SCOTT"."cours ...
- tensorflow中的图(02-1)
由于tensorflow版本迭代较快且不同版本的接口会有差距,我这里使用的是1.14.0的版本 安装指定版本的方法:pip install tensorflow==1.14.0 如果你之前安 ...
- 数学公式在 iOS 中的表示
1. 三角函数 double sin (double);正弦 double cos (double);余弦 double tan (double);正切 2 .反三角函数 double asi ...
- 2 (mysql实战) 日志系统
前面我们系统了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块.相信你还记得,一条查询语句的执行过程一般是经过连接器.分析器.优化器.执行器等功能模块,最后到达存储引擎. 那么,一条更新语 ...
- 分段控制器UISegmentedControl的使用、同一个控制器中实现多个View的切换、addChildViewController等方法的使用
本文先讲解简单的分段控制器UISegmentedControl的使用,然后具体讲解它最常使用的场景:同一个控制器中实现多个View的切换. 文章构思: 1.先直接讲解一张UI效果图的四种实现方式. 2 ...
- Numpy 为运算
Numpy “bitwise_” 开头的函数是位运算函数: Numpy 位运算包括以下几个函数: 函数 描述 bitwise_and 对数组元素执行位与操作 bitwise_or 对数组元素执行 ...
- 科学计算库(BLAS,LAPACK,MKL,EIGEN)
函数库接口标准:BLAS (Basic Linear Algebra Subprograms)和LAPACK (Linear Algebra PACKage) 1979年,Netlib首先用Fortr ...
- A. Optimal Currency Exchange 兑换硬币,剩下的钱最少
A. Optimal Currency Exchange time limit per test 1.5 seconds memory limit per test 512 megabytes inp ...