jsp图片上传

1.要实现图片上传,首先需要一个组件,这里我用的是smartupload.jar可以到这里下载http://download.csdn.net/detail/mengdecike/8279247

2.下载之后把这个文件直接复制到WebContent/WEB-INF/lib下面

3.jsp页面

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10 <form action="UpLoad" method="post" enctype="multipart/form-data" name="form1">
11   <p>用户名:
12     <label for="username"></label>
13   <input type="text" name="username" id="username">
14   </p>
15   <p>头 像:
16     <label for="photo"></label>
17     <input type="file" name="photo" id="photo">
18   </p>
19   <p>
20     <input type="submit" name="button" id="button" value=" 提 交 ">
21   </p>
22 </form>
23 </body>
24 </html>

4.上传的servlet代码如下:

 1         
request.setCharacterEncoding("utf-8");//设置字符 2 response.setContentType("text/html;charset=utf-8"); 3 response.setCharacterEncoding("utf-8"); 4 PrintWriter out =response.getWriter();//获取out输出对象 5 6 // 准备上传目录 7 String path = this.getServletContext().getRealPath("images"); 8 File fpath = new File(path); 9 if(!fpath.exists()){ 10 fpath.mkdir(); 11 } 12 13 // 实例化组件 14 SmartUpload su = new SmartUpload("utf-8"); 15 // 初始化组件 16 su.initialize(this.getServletConfig(), request, response); 17 18 try { 19 // 限定 20 su.setAllowedFilesList("jpg,png,gif"); 21 su.setMaxFileSize(50*1024); // 不能超过50K 22 23 // 上传并提取文件 24 su.upload(); 25 SmartFile file = su.getFiles().getFile(0); 26 // 生成文件名 27 String fname = new Date().getTime()+"."+file.getFileExt(); 28 // 保存文件 29 file.saveAs(path+"/"+fname); 30 //file.saveAs(path+"/"+fname,1); 31 // 提示 32 out.println("<script>alert(‘文件上传成功!‘);location.href=‘upload.jsp‘;</script>"); 33 34 // 提取字段信息 35 String username = su.getRequest().getParameter("username"); 36 System.out.println(">>> " + username); 37 38 // 进行数据库操作 39 40 41 } catch(SecurityException e){ 42 out.println("<script>alert(‘只能上传jpg、png、gif的文件并且不能超过50K!‘);history.back();</script>"); 43 e.printStackTrace(); 44 } 45 catch (SmartUploadException e) { 46 // TODO Auto-generated catch block 47 out.println("<script>alert(‘文件上传失败!‘);history.back();</script>"); 48 e.printStackTrace(); 49 } 50

如果需要整个的完整资源可以到http://download.csdn.net/detail/mengdecike/8279275 下载资源。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。