1、uploadimage.jsp
<%@ page contentType="text/html;charset=gb2312" language="java" import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,
java.sql.*,com.jspsmart.upload.*,java.util.*,cn.oof.database.*,cn.oof.house.*"%>
<%
SmartUpload mySmartUpload =new SmartUpload();
long file_size_max=4000000;
String fileName2="",ext="",testvar="";
String url="uploadfile/images/"; //应保证在根目录中有此目录的存在
//初始化
mySmartUpload.initialize(pageContext);
//只允许上载此类文件
try {
mySmartUpload.setAllowedFilesList("jpg,gif");
//上载文件
mySmartUpload.upload();
} catch (Exception e){
%>
<SCRIPT language=javascript>
alert("只允许上传.jpg和.gif类型图片文件");
window.location=''''upfile.jsp'''';
</script>
<%
}
try{
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
if (myFile.isMissing()){%>
<SCRIPT language=javascript>
alert("请先选择要上传的文件");
window.location=''''upfile.jsp'''';
</script>
<%}
else{
//String myFileName=myFile.getFileName(); //取得上载的文件的文件名
ext= myFile.getFileExt(); //取得后缀名
int file_size=myFile.getSize(); //取得文件的大小
String saveurl="";
if(file_size<file_size_max){
//更改文件名,k络O0Yt网z垠U供f的_eryf?的理X%ICp*q;D1uS1的^取得当前上传时间的毫秒数值
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
saveurl=request.getRealPath("/")+url;
saveurl+=filename+"."+ext; //保存路径
myFile.saveAs(saveurl,mySmartUpload.SAVE_PHYSICAL);
//out.print(filename);
//-----------------------上传完成,开始生成缩略图-------------------------
java.io.File file = new java.io.File(saveurl); //读入刚才上传的文件
String newurl=request.getRealPath("/")+url+filename+"_min."+ext; //新的缩略图保存地址
Image src = javax.imageio.ImageIO.read(file); //构造Image对象
float tagsize=200;
int old_w=src.getWidth(null); //得到源图宽
int old_h=src.getHeight(null);
int new_w=0;
int new_h=0; //得到源图长
int tempsize;
float tempdouble;
if(old_w>old_h){
tempdouble=old_w/tagsize;
}else{
tempdouble=old_h/tagsize;
}
new_w=Math.round(old_w/tempdouble);
new_h=Math.round(old_h/tempdouble);//计算新图长宽
BufferedImage tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(src,0,0,new_w,new_h,null); //绘制缩小后的图
FileOutputStream newimage=new FileOutputStream(newurl); //输出到文件流
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);
encoder.encode(tag); //近JPEG编码
newimage.close();
}
else{
out.print("<SCRIPT language=''''javascript''''>");
out.print("alert(''''上传文件大小不能超过"+(file_size_max/1000)+"K'''');");
out.print("window.location=''''upfile.jsp;''''");
out.print("</SCRIPT>");
}
}
}catch (Exception e){
e.toString();
}
%>
2 upload.htm
<html>
<head>
<title>请选择上传的图片</title>
</head>
<body>
<table border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="45" align="center" valign="middle"><form action="uploadimage.jsp" method="post" enctype="multipart/form-data" name="form1">
请选择上传的图片
<input type="file" name="file">
<input type="submit" name="Submit" value="上传">
</form></td>
</tr>
</table>
</body>
</html
分享到:
相关推荐
通过上述分析可以看出,这段JSP代码实现了基本的图片上传功能,包括上传文件类型的限制、文件大小的检查、唯一文件名的生成、文件的物理存储以及图片的压缩处理。SmartUpload组件在这里起到了关键作用,简化了文件...
例如,以下是一段简单的JavaScript代码示例: ```javascript function previewImage(fileInput) { var file = fileInput.files[0]; if (file.type.startsWith('image/')) { var reader = new FileReader(); ...
这段代码首先获取名为“file”的文件Part,然后创建一个临时文件,并从Part中读取输入流,将其内容写入临时文件。注意,这只是一个基本的实现,实际应用中还需要考虑错误处理、文件大小限制、文件类型检查等安全性...
在JSP页面中,图片上传成功后通常会有一段JavaScript代码负责向服务器发起请求,获取上传成功的图片地址,然后更新到页面上显示。假设代码如下: ```html ${siInfoMap.LOGO}" width="255px" height="66px;" /> ``` ...
本文将基于给定的JSP代码片段详细介绍如何实现基于JSP的图片上传与预览功能。 #### 二、关键技术点解析 ##### 1. JSP基础 JSP(JavaServer Pages)是一种用于创建动态网页的技术。它允许将Java代码嵌入到HTML文...
在"jsp上传文件模块代码,测试成功的"项目中,我们有两个关键的文件:`uploadFile.jsp`和`upload.jsp`。这两个文件分别承担不同的职责。 1. `uploadFile.jsp`:通常是用户交互的页面,负责展示上传文件的表单。这个...
这是一个常见的需求,特别是在开发Web应用程序时,用户可能需要上传文件(如图片、文档等)或者下载服务器上的资源。 **一、JSP简介** Java Server Pages (JSP) 是Java平台上的一个标准,用于创建动态Web内容。它...
这段代码会把上传的图片保存到指定的服务器目录。 ### 2. 图片下载 #### 2.1 配置Servlet 为了实现图片下载,我们需要创建一个专门的Servlet,例如`DownloadServlet`。在`web.xml`中配置该Servlet,关联URL路径和...
本话题将重点讲解如何利用JSP来实现文件的上传与下载功能,并涉及一个常用的第三方库——SmartUpload。 一、JSP文件上传 文件上传在Web应用中是非常常见的需求,例如用户注册时提交的头像、论坛中的附件等。在JSP...
首先,我们需要在服务器端创建一个用于图片上传的JSP页面,例如`server_productsAdd.jsp`。在这个页面中,我们需要导入jspSmartUpload的相关类,以便使用它的功能。在示例代码中,我们看到了`com.web.server.user.*`...
这个"jsp+servlet上传图片的example"是一个完整的示例项目,旨在帮助开发者理解并实施这一常见功能。 首先,让我们了解JSP和Servlet的基础知识。JSP是一种动态网页技术,它允许我们在HTML页面中嵌入Java代码,使得...
总结起来,这个“支持图片上传jsp版编辑器”是一个用于网页内容创作的工具,集成了图片上传功能,适用于需要在网页中插入和管理图片的场合。它利用JSP技术在服务器端处理图片操作,提供了便捷的用户界面和后台服务,...
【描述】"jsp上传真实代码示例"表明这个压缩包中可能包含了一个完整的JSP文件上传的项目或者是一段可以运行的示例代码。这通常涉及到表单提交、文件流处理、以及服务器端的安全验证。在实际开发中,文件上传不仅需要...
通过以上分析可以看出,该示例代码提供了一个简单的文件下载功能实现方案,使用JSP结合SmartUpload插件来完成。这种方法不仅易于实现,而且具有较高的灵活性和可扩展性。对于需要快速添加文件下载功能的项目来说,这...
这段代码会将保存的图片生成大小为100x100像素的缩略图,并保存到指定路径。 一旦图片上传并生成缩略图,你需要在Action类中返回一个结果,这个结果应该指向一个JSP页面,展示上传的图片。在JSP页面中,可以使用`...
这段代码定义了一个表单,用户可以选择一个图像文件进行上传,表单提交的目标是`UploadServlet`,这是`Servlet`的实例。 其次,`Servlet`是Java的一个接口,它在服务器端运行,处理HTTP请求并生成HTTP响应。在头像...
**JSP(JavaServer Pages)**是一种动态网页技术,它允许开发者将HTML代码与Java代码混合编写,以创建交互式的Web应用。在这个重要的JSP代码集合中,包含了多个关键功能的实现,对于学习和开发JSP应用具有很高的参考...
本示例代码是关于如何使用uploadify在Java环境中(通过jsp和servlet)实现多文件上传的一个实例。 首先,uploadify是一个基于jQuery的插件,它的核心功能是通过Flash或HTML5技术提供了一种友好的用户界面,让用户...
综上所述,该文件上传系统源代码利用了JSP的强大功能和Dreamweaver的便捷开发环境,实现了一个用户友好的文件上传功能,同时也涉及到文件存储、权限控制和错误处理等关键模块。通过学习和理解这个项目,开发者可以...