jsp实现图片的上传和下载
来源:互联网 发布:heyden 分层标定算法 编辑:程序博客网 时间:2024/05/17 09:17
将图片上传
1.添加使用jar包, jspSmartUpload.jar,并导包;
2.创建jsp页面,注意必须是“post”方式提交,form标签中一定要添加enctype=”multipart/form-data”
<body> <form action="<%=request.getContextPath()%>/UpServlet" method="post" enctype="multipart/form-data"> <p><input type="file" name="file1"></p> <p><input type="file" name="file2"></p> <p><input type="file" name="file3"></p> <p><input type="file" name="file4"></p> <p><input type="submit" value="上传"></p> </form></body>
3.添加servlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1)创建SmartUpload对象, SmartUpload su=new SmartUpload(); //以及初始化initialize(getServletConfig(), request, response); su.initialize(getServletConfig(), request, response); //2)设置上传限制(文件的大小,类型) su.setMaxFileSize(1024*1024*9); su.setAllowedFilesList("jpg,png,gif"); //3)调用SmartUpload对象的 upload() try { su.upload(); } catch (SmartUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } //4)设置上传路径 String path=this.getServletContext().getRealPath("images"); File file=new File(path); if(!file.exists()) { file.mkdir();//创建文件夹 } //5)读取上传文件的个数,开始单个文件的主传 int count=su.getFiles().getCount(); List<String> urls=new ArrayList<>(); for (int i = 0; i < count; i++) { /*5.1)读取本次上传的文件 5.2)判断文件的大小,如果为0则越过 5.3)改文件名 5.4)调用文件对象的 saveAs()方法 5.5)数据库处理*/ com.jspsmart.upload.File file1=su.getFiles().getFile(i); if(file1.getSize()==0) { continue; } String filename=file1.getFileName(); try { file1.saveAs(path+"/"+filename); urls.add("images/"+filename);//要添加相对路径 } catch (SmartUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } } request.setAttribute("urls", urls); request.getRequestDispatcher("success.jsp").forward(request, response); //6)修改跳转路径 结束 //7)处理异常,完成跳转 }
跳转至success.jsp中显示
<body> <c:forEach items="${urls }" var="url"> <img alt="" src="${url }"><br> </c:forEach></body>
关于下载
在WebContent中建个文件夹,里面存放要下载的内容
jsp页面
<body> <a href="<%=request.getContextPath()%>/DownServlet">下载</a></body>
servlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /*创建SmartUpload对象,初始化 获得文件路径 su.setContentDisposition(null); 调用下载方法downloadFile(下载的文件的路径);*/ SmartUpload su=new SmartUpload(); su.initialize(getServletConfig(), request, response); String path=this.getServletContext().getRealPath("down/[Java参考文档]JDK_API_1_6_zh_CN.CHM"); su.setContentDisposition(null);//禁止在浏览器中打开 try { su.downloadFile(path); } catch (SmartUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
阅读全文
1 0
- jsp实现图片的上传和下载
- untiy实现图片的上传和下载
- Unity实现图片的上传和下载
- struts+jsp在页面图片的上传和下载
- Servlet和Jsp实现原生的上传与下载文件
- jsp+servlet实现文件的上传和下载
- struts实现的图片的上传和下载
- Android通过WebService实现图片的上传和下载(一)
- MVC图片的上传和下载(简单实现)
- php程序中实现图片的上传和下载
- spring boot实现图片的上传和下载功能
- JSP实现文件的上传与下载
- JSP实现的文件上传与下载
- JSP实现图片上传
- JSP实现图片上传
- jsp实现图片上传
- jsp之文件的上传和下载
- JSP文件的上传和下载
- springMVC实现单文件和多文件上传
- Java集合中线程安全的类
- Java log4j详细教程
- MyEclipse下载地址
- http错误码含义
- jsp实现图片的上传和下载
- 自动化测试之接口测试Jmeter+robotframework+jenkins(已实现,改进中)
- vue-router 路由
- 指向指针的指针的用途
- 百度飓风算法来袭,我们该怎么办?
- 欢迎使用CSDN-markdown编辑器
- 【更新】Aspose.Cells 7月新版发布 | 支持从数字文件中读取单元格内容和样式
- thinkphp集成银联网关支付简单实例
- 什么是OpenStack?