/**
* 上传图片(员工照片)
* @return
* @throws Exception
*/
public String loadImageToServer(String filePath,String serverPath) throws Exception {
//String filePath=this.filePath;
//String serverPath=ServletActionContext.getServletContext().getRealPath("/res_base/dxs_gov_cn_www/default/common/personImg");
String resultPath = ""; //上传后图片所在的路径
String imageName = ""; //上传后图片文件名
String fileType =""; //上传后图片类型
FileOutputStream out = null; //文件输出流
try { //验证图片上传的格式是否正确
File f = new File(filePath);
if (!f.isFile())
throw new Exception(f +" 不是图片文件!");
//addActionError("");
if (f != null && f.exists()) { //这里的ImageIO属于java工厂类,在工厂类class里面,调用的System.gc(),频繁调用会造成dump,需要考虑优化
BufferedImage image = ImageIO.read(f); // 读入文件
if (image != null) {
BufferedImage tag = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB); //构造一个类型为预定义图像类型之一的 BufferedImage
tag.getGraphics().drawImage(image, 0, 0, image.getWidth(), image.getHeight(), null); //绘制所需要尺寸大小的图片
/*
* 以下生成图片上传后在服务器上的新路径
*/
int lastLength = filePath.lastIndexOf(".");
Date date = new Date(System.currentTimeMillis());
String strDate = new SimpleDateFormat("yyyyMMddhhmmss").format(date);
int random = (int)(Math.random()*99);
imageName = strDate+ random; //以系统时间来随机的创建图片文件名 ,防止传上来的图片名称相同
fileType = filePath.substring(lastLength); //获取上传图片的类型
resultPath = serverPath +"site"+ imageName + fileType;
/*
* 进行图片的绘制
*/
out = new FileOutputStream(resultPath);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParam param =
encoder.getDefaultJPEGEncodeParam(tag);
param.setQuality(0.50f, true); //95%图像
param.setDensityUnit(1); //像素尺寸单位.像素/英寸
param.setXDensity(300); //水平分辨率
param.setYDensity(300); //垂直分辨率
encoder.setJPEGEncodeParam(param);
encoder.encode(tag);
tag = null;
}
}
f = null;
} catch (Exception ex) {
ex.printStackTrace();
} finally {
out.close();
out = null;
}
return resultPath;
}
分享到:
相关推荐
本教程将详细介绍如何在微信小程序中使用Canvas进行绘图,并将处理后的图片上传到服务器。 首先,我们需要在小程序的页面JSON配置文件中引入Canvas组件。例如: ```json { "component": true, "usingComponents...
java图片上传到服务器以及在服务器上图片修改删除,可以从前端获取图片后端接收然后保存,还可以修改图片修改之前会删除原来的图片。
在iOS应用开发中,将图片上传到服务器是常见的功能需求,尤其在社交、电商或分享类应用中。本文将深入探讨如何实现这一过程,包括基本原理、所需技术以及实际操作步骤。 首先,我们需要理解基本的网络请求原理。iOS...
在IT行业中,多张图片上传到服务器是一项常见的需求,尤其在社交媒体、电商平台或者内容管理系统等应用中。这个“多张图片上传到服务器”的项目提供了一个示例,它可以帮助开发者理解并实现这一功能。通过分析标题和...
在本场景中,我们关注的是如何使用Struts2实现图片上传到服务器,并且能异步加载显示这些图片。这个过程涉及的技术点包括文件上传、服务器存储、Ajax异步请求以及前端展示。 首先,我们需要在Struts2的配置文件...
2. **图片上传到服务器** 将Base64字符串作为HTTP请求的一部分发送到服务器。通常,你可以使用Ajax或者Fetch API来实现。在请求体中,可以将Base64字符串放在JSON对象内,然后发送POST请求。 ```javascript let ...
在ASP(Active Server Pages)开发中,实现图片上传到服务器的文件夹是一项常见的需求,尤其在构建交互式网站时。这个功能允许用户通过网页上传图片,然后存储在服务器的特定目录下,以便后续访问和展示。以下是实现...
在Android应用开发中,将图片上传到服务器是常见的需求,比如用户头像更新、分享图片或者保存用户生成的内容。这个过程涉及到多个技术点,包括图片的读取、压缩、网络请求以及服务器端的处理。接下来,我们将详细...
base64图片上传到服务器,比form表单上传方便,以string类型将图片向后台传递
c/s 客户端PC上传到服务器上的源代码 可以参考参考 用的是webclient
微信小程序开发附源码:tp5 实现微信小程序多图片上传到服务器功能 微信小程序开发中,实现多图片上传到服务器功能是一个常见的需求。_tp5框架可以满足这种需求,本文将对微信小程序的多图片上传到服务器功能进行...
这个“图片上传到服务器,测试代码”项目显然提供了实现这一功能的代码示例,重点在于支持多张图片的同时上传。它引用了AsyncHttpClient框架,这是一款异步HTTP客户端库,常用于Android和Java应用程序,以处理网络...
通过微信 JSD-SDK开发文档,调用微信接口获取摄像头图片上传到服务器,保存图片到本地服务器
quill视频上传,图片上传到服务器模块,用video标签替换iframe 安装教程 cnpm i vue-quill-editor cnpm i quill cnpm i quill-video-image-module 使用说明 import 'quill/dist/quill.core.css' // import styles...
在本项目中,"Android客户端+web服务端实现图片上传到服务器"是一个综合性的实践案例,涵盖了移动应用开发和Web服务交互的关键技术。这个项目旨在教你如何通过Android客户端应用程序将拍摄的照片上传到服务器,然后...
在Java Web开发中,实现图片上传到服务器并读取的过程涉及到多个步骤,包括客户端与服务器端的交互、文件上传处理、数据库操作以及图片的显示。以下是对这一过程的详细解释: 1. **客户端与服务器端交互**: - ...
### C# WinForm 上传图片文件到服务器的方法 在C# WinForm开发中,上传文件尤其是图片文件到服务器是一项常见的需求。本文将详细介绍如何利用C#实现这一功能,并结合提供的部分代码示例进行深入解析。 #### 一、...
最近要搞一个项目,需要上传相册和拍照的图片,不负所望,终于完成了! 不过需要说明一下,其实网上很多教程拍照的图片,都是缩略图不是很清晰,所以需要在调用照相机的时候,事先生成一个地址,用于标识拍照的图片...
在JavaScript中实现图片上传到服务器的过程通常涉及到前端的文件选取、本地预览、Base64编码,以及与后端服务器的交互。以下是对这个过程的详细解析: 1. **前端文件选取**: - HTML部分提供了`...