java 保存图片_java后台接受到图片后保存方法
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 。
第一步:借助于springmvc框架的平台实现。
第二步:java网页下载功能怎么获取文件名。
第三步:前端如何实现突破预览效果。
第二步骤:主要功能实现。springboot默认是集成springmvc,使用springboot和直接使用springmvc上传是一样的。springboot默认是集成springmvc,使用springboot和直接使用springmvc上传是一样的。
2、前端代码:
1、具体代码如下所示:
此处直接使用的表单同步提交。
图片上传
图片:
.
控制器UploadController 实现
UploadController 主要分为3部分
1.1 调整页面请求goUploadImg
1.2 上传请求方法uploadImg
1.3 存储图片方法uploadFile
@Controllerpublic class UploadController {
//跳转到上传文件的页面
@RequestMapping(value = "/gouploadimg", method = RequestMethod.GET)
public String goUploadImg() {
//跳转到 templates 目录下的 uploadimg.html
return "uploadimg";
}
//处理文件上传
@ResponseBody //返回json数据
@RequestMapping(value = "/testUploadimg", method = RequestMethod.POST)
public String uploadImg(@RequestParam("file") MultipartFile file,
HttpServletRequest request) {
tring contentType = file.getContentType();
String fileName = file.getOriginalFilename();
String filePath = "D:/img";
if (file.isEmpty()) {
return "文件为空!";
}
try {
uploadFile(file.getBytes(), filePath, fileName);
} catch (Exception e) {
// TODO: handle exception
}
//返回json
return "上传成功";
}
public static void uploadFile(byte[] file, String filePath, String fileName) throws Exception {
File targetFile = new File(filePath);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
FileOutputStream out = new FileOutputStream(filePath +"/"+ fileName);
out.write(file);
out.flush();
out.close();
}
}
2:同时需要将上传图片的原始文件名和存储文件名、以及关联id存入一个数据表中。
2.1 将存储文件名设置为UUID,避免存储文件名重复
public static String getUUID(){
UUID uuid=UUID.randomUUID();
String str = uuid.toString();
String uuidStr=str.replace("-", "");
return uuidStr;
}
2.2 将存储文件名按照时间生成,避免存储文件名重复
System.nanoTime()
该函数是返回纳秒的。1毫秒=1纳秒*1000*1000
如:long time1=System.nanoTime();
2.3 或者借助于SimpleDateFormat 将Date格式化到毫秒也可以解决文件重名的问题。
测试。
打开页面地址如下图所示:
java 保存图片_java后台接受到图片后保存方法相关推荐
- Java踩坑笔记 —— base64转换为图片后图片显示不全
Java踩坑笔记 -- base64转换为图片后图片显示不全 前言 解决思路 案例代码 结束语 前言 最近在开发项目中,发现base64转换图片时,出现了图片显示不全,例如如下这样 可以明显看到图片部 ...
- JAVA快速获取网络图片或者URL图片并保存到本地
JAVA快速获取网络图片或者URL图片并保存到本地,直接上代码: import java.io.ByteArrayOutputStream; import java.io.File; import j ...
- Java pdf使用aspose分页转图片后再合成pdf再压缩pdf, 所有文件放到缓存中代码
使用 Aspose 库将 PDF 分页转换为图片后再合成为 PDF 并压缩的代码如下: import com.aspose.pdf.*; import java.io.*; import java.u ...
- Java pdf使用aspose分页转图片后再合成pdf再压缩pdf代码
使用 Aspose 将 PDF 分页转换为图片后再合并成 PDF 并压缩的代码示例如下: import com.aspose.pdf.*;// Load the PDF document Docume ...
- Matlab 读出图片后保存大小改变
一.问题: matlab imread 的图片,保存后大小和原图不一致 二.解决办法: figure(); % imshow(uint8(img)); title('Original'); % tru ...
- java 如何将base64 转成图片并保存,返回地址入库
目标:将前端传进来的base64 转换成图片,并保存到指定目录,然后将目录存入数据库.这个实际项目中还是挺常见的. 代码如下; 先掉 base64ToByte(); 在调用 filePath() ...
- java 保存图片_java实现保存文件图片以及读取
// 文件转换为字节数组 private byte[] getByteFromFile(File file) { byte[] be = null; try { if (file == null) { ...
- java二进制保存图片_Java中如何把图片转换成二进制流
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 1.将Image图像文件存入到数据库中 我们知道数据库里的Image类型的数据是"二进制数据",因此必须将图像文件转换成字节数组才能存 ...
- mq java 开发_Java后台开发ActiveMQ使用指南
ActiveMQ简单的介绍 ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线,是一个开放源代码消息中间件,对于消息的传递有两种类型:点对点的,即一个生产者和一个消费者一一对应. ...
- java保存图片_java 保存图片
使用BufferedImage生成图片 保存图片有两种方式: 1.JPEGImageEncoder 该种方式保存的图片会失真,而且图片还大,不建议使用: BufferedImage image; Bu ...
最新文章
- Chemical Science | 基于金属的片段分子库用于筛选候选药物
- Shell练习(七)
- 项目管理概述学习记录(一)
- Immutable 想破坏它也没办法
- php动态写入vue,Vue自定义动态组件使用详解
- 爬虫之数据解析的三种方式
- java dct变换_Discrete Cosine Transform [DCT] (离散余弦变换)
- 在Mac上如何设置自动解压下载的压缩文件?
- asus官方android升级包,华硕ASUS手机平板官方刷机包raw格式解压修改工具
- java逻辑表达式的计算和优化
- 找出数组x中的最大值和该值所在的元素下标,数组元素从键盘输入。
- Eslint代码规范
- 教你们如何快速建立一个完美的python项目
- snowStorm.js下雪效果
- 迅为3A5000_7A2000开发板龙芯全国产处理器LoongArch架构核心方案
- 二叉搜索树(BST)——基本概念及基本实现代码
- Oracle使用PL/SQL自定义函数
- 定义销售组织(Sales Organization)
- reids3.0安装文档
- Xilinx zc706 Si5324