日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Jsp+Servlet實現文件上傳下載 刪除上傳文件(三)

瀏覽:187日期:2022-06-07 16:45:46

接著上一篇講:Jsp+Servlet實現文件上傳下載(二)--文件列表展示

本章來實現一下刪除已上傳文件,同時優化了一下第一章中的代碼。

廢話少說,上代碼得意

1.調整列表頁面list.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head>  <title>上傳文件列表</title> </head> <body>  <h3>文件列表</h3> <table border="1" bordercolor="#000000" cellspacing="0" cellpadding="2">  <tr>   <th>文件名</th>   <th>文件大小(KB)</th>   <th>操作</th>  </tr>  <c:if test="${not empty accessoryList}">   <c:forEach items="${accessoryList}" var="acc">    <tr>     <td>${acc.fileName}</td>     <td>${acc.fileSize}</td>     <td><a href="<%=request.getContextPath()%>/removeUploadedFile?id=${acc.id}" rel="external nofollow" >刪除</a></td>    </tr>   </c:forEach>  </c:if> </table> </body> </html> 

2.新增FileUtils工具類

package util;  import java.io.File;  /**  * 文件操作工具類  *  * @author xusucheng  * @create 2017-12-30  **/ public class FileUtils {  public static boolean delete(String path){   File file = new File(path);   if(!file.isFile()){    System.out.println("刪除失敗,文件:"+path+"不存在!");    return false;   }    file.delete();    return true;  } } 

3.調整附件實體DAO,新增load方法

package dao.upload;  import entity.upload.EntityAccessory; import util.DBUtil;  import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List;  /**  * 附件上傳DAO  *  * @author xusucheng  * @create 2017-12-29  **/ public class AccessoryDao {  public static void add(EntityAccessory entity) {   Connection conn = DBUtil.getConnection();   String sql = "insert into tbl_accessory(file_name,file_size,file_ext_name,file_path) values(?,?,?,?)";   try {    PreparedStatement ps = conn.prepareStatement(sql);    ps.setString(1, entity.getFileName());    ps.setDouble(2, entity.getFileSize());    ps.setString(3, entity.getFile_ext_name());    ps.setString(4, entity.getFilePath());    ps.execute();    //conn.commit();     DBUtil.close(null, ps, conn);   } catch (SQLException e) {    e.printStackTrace();   }  }   public static List<EntityAccessory> list() {   Connection conn = DBUtil.getConnection();   String sql = "select id,file_name,file_size,file_ext_name,file_path from tbl_accessory";   List<EntityAccessory> accessoryList = new ArrayList<>();   try {    PreparedStatement ps = conn.prepareStatement(sql);    ResultSet rs = ps.executeQuery();     while (rs.next()) {     EntityAccessory entity = new EntityAccessory();     entity.setId(rs.getInt("id"));     entity.setFileName(rs.getString("file_name"));     entity.setFileSize(new BigDecimal(rs.getDouble("file_size") / 1024).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());     entity.setFile_ext_name(rs.getString("file_ext_name"));     entity.setFilePath(rs.getString("file_path"));     accessoryList.add(entity);    }     DBUtil.close(rs, ps, conn);   } catch (SQLException e) {    e.printStackTrace();   }    return accessoryList;   }   public static EntityAccessory load(int id){   Connection conn = DBUtil.getConnection();   PreparedStatement ps=null;   ResultSet rs=null;   EntityAccessory entity = new EntityAccessory();   String sql = "select id, file_name,file_size,file_ext_name,file_path from tbl_accessory where id=?";   try {    ps = conn.prepareStatement(sql);    ps.setInt(1,id);    rs = ps.executeQuery();    while (rs.next()){     entity.setId(rs.getInt("id"));     entity.setFileName(rs.getString("file_name"));     entity.setFileSize(rs.getDouble("file_size"));     entity.setFile_ext_name(rs.getString("file_ext_name"));     entity.setFilePath(rs.getString("file_path"));    }   } catch (SQLException e) {    e.printStackTrace();   }finally {    DBUtil.close(rs,ps,conn);   }    return entity;  }   public static void remove(int id) {   Connection conn = DBUtil.getConnection();   String sql = "delete from tbl_accessory where id=?";   try {    PreparedStatement ps = conn.prepareStatement(sql);    ps.setInt(1,id);    ps.execute();    //conn.commit(); mysql默認開啟了autocommit     DBUtil.close(null,ps,conn);   } catch (SQLException e) {    e.printStackTrace();   }  } } 

4.新增刪除文件處理器,removeUploadedFileServlet

package servlet.upload;  import dao.upload.AccessoryDao; import entity.upload.EntityAccessory; import util.FileUtils;  import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;  /**  * 刪除已上傳文件  *  * @author xusucheng  * @create 2017-12-30  **/ @WebServlet("/removeUploadedFile") public class removeUploadedFileServlet extends HttpServlet {  @Override  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {   //String filePath = request.getParameter("filePath");   int fileId = Integer.valueOf(request.getParameter("id"));   EntityAccessory entity = AccessoryDao.load(fileId);   //刪除文件   FileUtils.delete(entity.getFilePath());   //刪除數據庫記錄   AccessoryDao.remove(fileId);    //跳回到文件列表頁   //request.getRequestDispatcher("listUploadedFiles").forward(request, response);   response.sendRedirect("listUploadedFiles");  }   @Override  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {   doPost(request, response);  }   } 

5.測試效果截圖

刪除前:

刪除后:

6.下集預告

實現文件下載功能

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。

標簽: JSP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
综合一区在线| 日本欧美一区二区| 911亚洲精品| 亚洲日产国产精品| 一区二区不卡| 日韩在线观看一区二区| 国产精品88久久久久久| 久久久久久色 | 首页亚洲欧美制服丝腿| 怡红院精品视频在线观看极品| 特黄特色欧美大片| 欧美日韩精品一区二区视频| 久久婷婷久久| 99在线|亚洲一区二区| 欧美精品资源| 激情综合网址| 91久久中文| 亚洲综合电影一区二区三区| 鲁大师影院一区二区三区| 免费看欧美美女黄的网站| 丝袜亚洲另类欧美| 少妇高潮一区二区三区99| 久久国内精品自在自线400部| 久久激情av| 久久超级碰碰| 在线手机中文字幕| 久久夜夜操妹子| 天堂网在线观看国产精品| 蜜臀91精品国产高清在线观看| 午夜电影亚洲| 中文亚洲欧美| 日韩一区精品| 精品视频网站| 99热国内精品| 视频一区二区中文字幕| 欧美日本久久| 亚洲天堂免费电影| 午夜一级久久| 日本免费在线视频不卡一不卡二| 国产欧美自拍| 日韩黄色大片| 男女激情视频一区| 欧美精品不卡| 国产一区二区三区自拍| 天堂va在线高清一区| 欧美中文高清| 涩涩av在线| 亚洲无线观看| 精品视频99| 午夜国产精品视频免费体验区| 视频一区日韩精品| 98精品久久久久久久| 99re国产精品| 久久不卡国产精品一区二区| 激情综合自拍| 国产伦精品一区二区三区千人斩| 黄色aa久久| 午夜亚洲福利| 色爱av综合网| 久久国际精品| 黄在线观看免费网站ktv| 蜜桃久久av一区| 中文字幕一区久| 日韩精品免费视频一区二区三区| 中国字幕a在线看韩国电影| 亚洲综合中文| 亚洲综合电影| 久久精品99久久久| 激情综合激情| 国产免费久久| 午夜影院欧美| 欧美激情91| 亚洲一区二区三区高清不卡| 国产精品高潮呻吟久久久久| 亚洲电影在线一区二区三区| 亚洲三级国产| 天堂网av成人| 麻豆久久久久久| 亚洲精品乱码久久久久久蜜桃麻豆| 日韩福利一区| 91精品麻豆| 99国产精品久久久久久久| 精品免费在线| 日韩精品免费视频一区二区三区 | 老司机免费视频一区二区三区| 水蜜桃久久夜色精品一区| 亚洲精品系列| 九色精品91| 国产suv精品一区| 日韩av中文字幕一区二区三区| 久久麻豆精品| 国产aⅴ精品一区二区三区久久| 日韩精品亚洲专区| 日韩网站在线| 亚洲风情在线资源| 欧美aⅴ一区二区三区视频| 亚洲久草在线| 午夜精品网站| 丝袜美腿诱惑一区二区三区| 国产福利资源一区| 天堂成人国产精品一区| 久久久五月天| 色一区二区三区| 精品一区二区三区亚洲| 91国内精品| 四虎国产精品免费久久| 国产视频久久| 国产99久久| 久久精品在线| 日本精品不卡| 国产成人精品福利| 国产精品15p| 久久激五月天综合精品| 午夜久久av| 亚洲综合福利| 午夜日韩在线| 极品裸体白嫩激情啪啪国产精品| 成人亚洲欧美| 不卡一二三区| 日韩中文影院| 婷婷激情一区| 青青久久av| 日韩欧美一区二区三区免费观看| 国产一区二区三区不卡视频网站| 国产精品极品在线观看| 国产精品一站二站| 国产日韩免费| 日韩av资源网| 欧美日本一区| 国产日韩欧美三区| 久久精品xxxxx| 久久国产精品色av免费看| 日本综合精品一区| 亚洲精品伊人| 欧美日韩va| 国产精成人品2018| 久久精品一区二区国产| 久久精品免费看| 97精品国产| 久久久久欧美精品| 国产精品88久久久久久| 在线亚洲激情| 日韩中文欧美在线| 日日夜夜免费精品| 国产欧美日韩精品一区二区三区| 91精品麻豆| 欧美1区二区| 青青青免费在线视频| 久久精品青草| 欧美日韩在线二区| 免费日韩av片| 视频一区免费在线观看| 日韩精品导航| 首页国产欧美日韩丝袜| 日韩毛片一区| 国产日韩欧美| 精品免费视频| 国产综合亚洲精品一区二| 亚洲欧美日韩专区| 香蕉久久久久久| 九九久久国产| 一区二区精品伦理...| 欧美大黑bbbbbbbbb在线| 中文字幕亚洲精品乱码| 国产精品流白浆在线观看| 丁香婷婷久久| 午夜久久福利| 日本强好片久久久久久aaa| 欧美性www| 在线天堂资源www在线污| 亚洲二区免费| 日韩精品a在线观看91| 国产精品三p一区二区| 国产成人精品一区二区三区免费| 国产91精品对白在线播放| 亚洲视频国产精品| 国产亚洲欧美日韩在线观看一区二区| 免费精品一区| 久久久亚洲一区| 一区二区高清| 乱一区二区av| 久久久成人网| 人人精品久久| 亚洲www免费| 亚洲天堂日韩在线| 精品一区视频| 悠悠资源网久久精品| 91亚洲无吗| 91日韩免费| 91久久午夜| 精品午夜视频| 欧美日韩1区| 韩国女主播一区二区三区| 日韩av在线播放网址| 精品一区欧美| 国产精品亚洲片在线播放| 欧美日韩亚洲一区| 国产精品字幕| 日韩在线一二三区| 国产成年精品|