- 浏览: 109308 次
- 性别:
- 来自: 北京
文章分类
最新评论
1.入口
function loadPicture(field)
{
var picPath = document.userForm("user.picPath");
var photoPath = document.userForm("user.photoPath");
var URL = "hr/employee/baseInfo/pictureInFrame.jsp?field="+field;
loc_x=150; // document.body.scrollLeft+event.clientX-event.offsetX;
loc_y=150; // document.body.scrollTop+event.clientY-event.offsetY;
var fileName = window.showModalDialog(URL,self,"edge:raised;scroll:1;status:0;help:0;resizable:1;dialogWidth:520px;dialogHeight:150px;dialogTop:"+loc_y+"px;dialogLeft:"+loc_x+"px");
if(fileName == undefined){
return;
}
if(fileName != ""){
if(field == "PICTURE"){
picPath.value = fileName;
document.all.img1.src = "ShowUploadFileServlet?path=" + fileName;
var o = document.getElementById("img1");
o.style.display = "block";
}
if(field == "IDPHOTO"){
photoPath.value = fileName;
document.all.img2.src = "ShowUploadFileServlet?path=" + fileName;
var o = document.getElementById("img2");
o.style.display = "block";
}
}
}
2.弹出页面
----------------------------------------------------------
<%@ page contentType="text/html; charset=GBK"%>
<html>
<head>
<title>上载图片</title>
<frameset rows="*" frameborder="no" border="0" framespacing="0">
<frame src="pictureIn.jsp?field=<%=request.getParameter("field")%>"
name="purview_TopFrame" frameborder="0" scrolling="NO" noresize>
</frameset>
<noframes>
<body>
</body>
</noframes>
</html>
-------------------------------------------------------
<%@ page contentType="text/html; charset=GBK"%>
<link href="/hrWeb/hr/css/style.css" rel="stylesheet" type="text/css">
<script type="" language="javascript" src="/hrWeb/hr/js/Shadow.js"></script>
<script type="" language="javascript" src="/hrWeb/hr/js/ShowButton.js"></script>
<script type="text/javascript">
function clk_upload()
{
form1.action="uploadPic.jsp?field=<%=request.getParameter("field")%>";
form1.submit();
}
function clk_cancel()
{
window.close();
}
</script>
<body>
<div align="center">
<form name="form1" method="POST" action="" ENCTYPE="multipart/form-data">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="ReportTable">
<tr class="TableContent">
<td> </td>
<td> </td>
</tr>
<tr class="TableContent" align="center">
<td align="right">请选择文件:</td>
<td align="left"><input type="file" name="uploadExcel" value=""
size="30" title="图片文件" class="Button1_mouseover" /> <script
type="text/javascript">showUploadBtn();showCancelBtn()</script></td>
</tr>
<tr class="TableContent">
<td> </td>
<td> </td>
</tr>
<tr class="TableContent">
<td colspan="2"> <b>注意:上载文件是图片格式(jpg、jpeg、gif、png格式)</b></td>
</tr>
</tr>
</table>
</form>
</div>
</body>
3.后台操作
<%@page contentType="text/html;charset=GBK"%>
<%@page import="cn.com.hkgt.util.*" %>
<%@page import="org.w3c.util.UUID"%>
<%@page import="cn.com.hkgt.util.PictureUtil"%>
<%@page import="java.io.File"%>
<%@page import="java.io.FileOutputStream;"%>
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" />
<body>
<form name="form1" method="POST" action="">
<%
String field = request.getParameter("field");
try {
// Initialization
mySmartUpload.initialize(pageContext);
mySmartUpload.setAllowedFilesList("jpg,JPG,jpeg,JPEG,gif,GIF,png,PNG");
// Upload
mySmartUpload.upload();
// Select each file
// Retreive the current file
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
//System.out.println("fileName : " + myFile.getFileName());
byte[] tempBytes = new byte[4];
tempBytes[0] = myFile.getBinaryData(0);
tempBytes[1] = myFile.getBinaryData(1);
tempBytes[2] = myFile.getBinaryData(2);
tempBytes[3] = myFile.getBinaryData(3);
//System.out.println(tempBytes[0]);
//System.out.println(tempBytes[1]);
//System.out.println(tempBytes[2]);
// Save it only if this file exists
//String savePath = myFile.getFilePathName();
//String originalPicPath = myFile.getFilePathName().trim();
//byte[] bytes = PictureUtil.getBytes(originalPicPath);
if(!PictureUtil.isGIF(tempBytes) && !PictureUtil.isJPG(tempBytes) && !PictureUtil.isPNG(tempBytes))
throw new Exception();
int size = myFile.getSize();
if (size == 0) {
out.print("<script language=\"javascript\">\r\n");
out.print("alert('上载失败,没有选择文件。');");
out.print("\r\n");
out.print("location='pictureIn.jsp?field=" + field + "';");
out.print("</script>");
} else if (field.equals("PICTURE") && size > 204800) {
out.print("<script language=\"javascript\">\r\n");
out.print("alert('上载失败,照片不能大于200KB。');");
out.print("\r\n");
out.print("location='pictureIn.jsp?field=" + field + "';");
out.print("</script>");
} else if (field.equals("IDPHOTO") && size > 512000) {
out.print("<script language=\"javascript\">\r\n");
out.print("alert('上载失败,身份证扫描件不能大于500KB。');");
out.print("\r\n");
out.print("location='pictureIn.jsp?field=" + field + "';");
out.print("</script>");
} else {
//路径
String uuid = new UUID().toString();
String startPath = HrPropertyUtil.getFileUploadPath();
String fileName = startPath + "/" + uuid + "." + myFile.getFileExt();
//2008-10-28 changed by changwei
//out.println("<script>alert(fileName = '" + fileName + "')</script>");
myFile.saveAs(fileName, mySmartUpload.SAVE_PHYSICAL);
String converUUID = new UUID().toString();
String converFileName = startPath + "/" + converUUID + ".jpg";
PictureUtil.toJPG(fileName,converFileName,100);
java.io.File file = new java.io.File(converFileName);
//System.out.println("file.length() = " + converFileName.length());
String absolutePath = file.getAbsolutePath();
absolutePath = absolutePath.replace('\\', '/');
out.print("<script language=\"javascript\">\r\n");
out.print("window.returnValue='" + absolutePath + "';");
out.print("alert('上载成功。');");
out.print("\r\n");
out.print("window.close();");
out.print("</script>");
}
} catch (Exception e) {
//e.printStackTrace();
out.print("<script language=\"javascript\">\r\n");
out.print("alert('上载失败,请检查文件格式是否正确。');");
out.print("\r\n");
out.print("location='pictureIn.jsp?field=" + field + "';");
out.print("</script>");
}
%>
</form>
</body>
---------------设置图片品质------------------------------------------------------
public static void toJPG(String source, String dest, int quality) throws JimiException {
if (dest == null || dest.trim().equals(""))
dest = source;
if (!dest.toLowerCase().trim().endsWith("jpg")) {
dest += ".jpg";
System.out.println("Overriding to JPG, output file: " + dest);
}
if (quality < 0 || quality > 100 || (quality + "") == null
|| (quality + "").equals("")) {
System.out.println("quality must between ’0’ and ’100’");
System.out.println("set to DEFAULT value:’75’");
quality = 100;
}
try {
JPGOptions options = new JPGOptions();
options.setQuality(quality);
ImageProducer image = Jimi.getImageProducer(source);
JimiWriter writer = Jimi.createJimiWriter(dest);
writer.setSource(image);
// 加入属性设置,非必要
// /*
writer.setOptions(options);
// */
writer.putImage(dest);
OutputStream os = new ByteArrayOutputStream();
writer.putImage(os);
} catch (JimiException je) {
throw je;
}
}
发表评论
-
解决excel文字读取错误 可能某些数字格式已丢失
2018-12-29 09:11 619ServletOutputStream ... -
struts上传下载多个文件
2015-04-30 11:24 513实例: 第一步导入包: commons-fileupload- ... -
jdcob--Could not initialize class com.jacob.com.ComThread
2015-02-27 09:00 19081--dll 文件 放在tomcat/bin 下面 ... -
ntko打印公章
2014-12-02 09:04 567//TANGER_OCX_OBJ.ActiveDocument ... -
hibernate 映射文件生成数据库表脚本
2011-03-28 16:20 865import org.hibernate.cfg.Config ... -
java换肤改变页面肤色
2011-03-02 14:05 995import java.io.IOException;impo ... -
java 过滤未登录的用户
2011-03-02 14:03 1103<filter> <filte ... -
java 在线用户统计
2011-03-02 13:47 1631web.xml <listener> ... -
java 过滤乱码
2011-03-02 13:44 948web.xml <filter> <f ... -
jacob资料
2011-02-13 23:48 1875JACOB是一个JAVA到微软的COM接口的桥梁。使用JACO ... -
hibernate 查询乱码
2010-10-06 15:12 748在使用HQL进行查询时,如果查询语句中存在中文字符,则会有乱码 ... -
java 多线程代码
2010-09-30 12:44 1490package com.jacob.activeX; imp ... -
过滤未登录的用户
2010-09-15 10:59 881package com.filter; import jav ... -
jacob操作word 解决换页问题
2010-09-13 08:17 3766package audit.pub.word; imp ... -
jacob操作word增加表格 行列
2010-08-10 09:52 2940import com.jacob.activeX.Activ ... -
jsp导出word 带图片
2010-04-12 17:28 33881.将word另存为html格式,然后将html格式的文件另存 ... -
读取blob格式图片上传到服务器目录
2010-04-12 17:21 1990//得到blob格式图片 String fileUrl = ... -
批量导入图片保存成blob格式
2010-03-31 15:15 1690/** * 创建目录 * @param director ... -
org.apache.tools包 解压缩zip 解决中文乱码 ant 版本冲突
2010-03-30 12:50 3040private void createDirectory(St ... -
java 获取文件大小
2010-03-29 14:32 15809import java.io.*; public class ...
相关推荐
【wangEditor上传图片 demo】是一个基于wangEditor富文本编辑器的图片上传功能示例,它展示了如何在前端使用wangEditor并结合后端Java代码实现图片的上传与展示。这个demo适用于那些想要在Web应用中集成图片上传功能...
本示例项目"Android 仿微信选择图片,上传图片"旨在帮助开发者实现类似的功能,让用户可以从手机相册中选取图片,并能上传到服务器。下面我们将详细探讨这一过程中的关键知识点。 1. **权限申请**: 在Android 6.0...
"jQuery批量上传图片插件"是基于jQuery实现的一种功能,旨在为网页应用提供便捷的图片批量上传功能。这个插件通常利用Ajax技术实现异步上传,即在不刷新页面的情况下,用户可以选择多张图片并将其上传到服务器,大大...
通过以上步骤,我们可以创建一个ASP.NET应用,它允许用户上传图片,并在上传过程中显示进度条。这个功能不仅可以提升用户体验,还能帮助监控上传状态,提高应用的可靠性。在实际开发中,可以根据项目需求进行相应的...
在C# WinForm应用开发中,上传照片到服务器是一个常见的需求,这涉及到客户端与服务器之间的文件传输技术。本文将深入探讨如何实现这个功能,以及如何根据要求修改照片的名字。 首先,我们需要了解C#中的文件操作...
这个"绝对好用的上传文件上传图片vb.net示例"提供了一个基础的实现,它不仅可以处理图片上传,通过调整还能扩展到其他文件类型的上传。下面将详细讲解其中涉及的关键知识点。 1. 文件上传控件:在ASP.NET中,`...
根据提供的标题、描述以及部分代码内容,我们可以总结出以下关于“使用VB.NET上传图片文件”的相关知识点: ### VB.NET上传图片文件概述 在VB.NET中实现文件上传功能时,主要涉及的是通过Web表单(ASP.NET)来处理...
这个"Python实现QQ相册自动上传照片源码"就是一个很好的例子,它利用编程技术实现了无人值守的照片上传功能,对于个人或企业来说,这可以极大地节省时间和精力。 首先,我们要了解这个项目的核心——Python编程语言...
四、上传图片 1. 创建上传方法:在WinForm中,创建一个按钮或菜单项,绑定点击事件。在事件处理函数中,实现图片上传的逻辑。 2. 选择图片:使用OpenFileDialog控件让用户选择要上传的图片文件。 3. 转换为Byte数组...
- 权限控制:确保只有授权用户能访问和上传图片,例如使用JWT令牌进行身份验证。 - 文件权限:设置正确的文件系统权限,防止非法访问。 - CDN加速:使用内容分发网络(CDN)可以提高图片加载速度,同时分散服务器...
在IT行业中,批量上传图片是一项常见的需求,尤其是在社交媒体、个人相册、云存储服务等应用场景中。QQ相册作为一款广泛使用的社交应用,其照片上传功能具有用户友好的特点,支持用户快速方便地分享自己的照片。这个...
【标题】"ueditor上传图片配置"涉及到的是在SpringBoot框架下集成并配置ueditor,以便实现用户在编辑器中上传图片的功能。ueditor是一款流行的富文本编辑器,它提供了丰富的在线编辑功能,包括文字编辑、图片上传、...
本教程将详细讲解两种实现C# WinForm上传图片的方法,并提供源代码供参考和修改,以适应不同类型的文件上传需求。 方法一:使用OpenFileDialog控件 OpenFileDialog是.NET Framework提供的一个内置控件,它允许用户...
2. **图片裁剪**:为了保持上传图片的质量和一致性,通常会提供图片裁剪功能。Android SDK提供了`Crop Intent`,也可以使用第三方库如`UCrop`进行更高级的裁剪操作。 3. **图片压缩**:为减少网络传输时间和节省...
在这个"上传图片不乱码demo"中,开发者已经解决了图片上传过程中的乱码问题,提供了简单易用的实现方式。下面我们将详细探讨相关的技术点。 1. **文件上传原理**:文件上传是通过HTTP协议的POST请求来完成的。在...
首先,让我们从AJAX上传图片开始。AJAX(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下与服务器交换数据并更新部分网页的技术。在图片上传场景中,AJAX可以提供无刷新的用户体验,使得用户在上...
在描述中提到的"自定义上传图片插件",可能是对TinyMCE原有图片上传功能的增强或替换。这个插件可能包含了以下关键部分: 1. **上传接口**:自定义插件需要实现一个图片上传接口,通常是通过发送HTTP请求到服务器端...
标题“上传图片 图片上传”直指这个核心操作,而描述中的“上传图片同时支持post参数,也支持上传其他类型文件【需修改对应参数】”揭示了实现这一功能时的一些关键技术和注意事项。 首先,我们来探讨图片上传的...
这个"网页上传照片demo"应该是一个示例项目,旨在展示如何在网站上实现用户上传图片的功能。以下是对这个主题的详细解释: 1. **HTML表单**:上传照片的基础是HTML的`<form>`元素,特别是`<input type="file">`标签...
在H5技术中,上传图片是一项常见的功能,广泛应用于网页、移动端应用以及各种在线服务中。这个"上传图片例子 H5"很可能是提供了一个演示如何在HTML5环境下实现图片上传的示例代码或教程。H5是HTML5的简称,是超文本...