2016-05-23 462 views
1

我是JSP的新手。我創建了一個在tomcat服務器上運行的jsp文件。我在我的程序中指定了我的目錄位置。我的程序顯示該目錄中的所有文件,並將結果顯示在表中並在文件名後創建刪除按鈕。我的計劃是如下(JSP文件):在JSP中刪除按鈕以從服務器刪除文件

<%@page import="java.io.File"%> 
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Directories</title> 
</head> 
<body> 
    <h2>Current Collection</h2> 
    <table width="100%" border="1"> 

     <% 
      File folder = new File("C:/Apps/eclipse-jee-mars-2-win32-x86_64/eclipse"); 
      File[] listOfFiles = folder.listFiles(); 
      for (int i = 0; i < listOfFiles.length; i++) { 
     %> 
     <tr> 
      <% 
       if (listOfFiles[i].isFile()) { 
      %> 
      <td><%=listOfFiles[i].getName()%></td> 
      <td><input type="submit" value="delete"></td> 
      <% 
       } 
      %> 
     </tr> 
     <% 
      } 
     %> 
    </table> 
</body> 
</html> 

當我在我的服務器上運行此,我的輸出是這樣的: http://i.stack.imgur.com/fFgxy.png

當用戶點擊刪除按鈕,我要的文件是從我的本地機器上刪除。我對JSP很新,我不確定如何做到這一點。任何幫助,將不勝感激。謝謝。

編輯: 這是我的servlet:

protected void doPost(HttpServletRequest request, 
     HttpServletResponse response) throws ServletException, IOException { 

    response.setContentType("text/html"); 

    String deleteFileName = request.getParameter("filename"); 
    System.out.println("you clicked on " + deleteFileName); 

    } 

這是我的jsp:

<tr > 
      <% 
       if (listOfFiles[i].isFile()) { 
      %> 
      <td><%=listOfFiles[i].getName()%></td> 
      <td><input type="submit" value="delete" name="filename"></td> 
      <% 
       } 
      %> 
     </tr> 
+1

jsp運行在服務器端,如果您嘗試使用JSP進行刪除,您將只能訪問由於安全問題而從服務器上刪除,從客戶端刪除您需要某種java applet – user2950720

回答

1

你需要一個HTML <form>標籤,並指定action=""屬性作爲URL由它來觸發將接收HTTP參數並執行操作的Servlet(或JSP)。

+0

謝謝。我會試試這個。 – Rose