首页>代码>Java实现最简单的网盘系统>/webdisk/src/com/cjg/web/DirServlet.java
package com.cjg.web;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.cjg.web.utils.FileUtils;
public class DirServlet extends HttpServlet {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    @SuppressWarnings("deprecation")
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=gb2312");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY leftmargin=50>");
        String path = request.getParameter("path");
        if (path != null && !path.equals("")) {
            out.println("[<a href='WriterServlet.shtml?path=" + path + "'>创建文件/文件夹</a>]");
            File file = new File(path);
            out.println("<a href='DirServlet.shtml?path=" + file.getParent() + "'><<后退</a>");
            out.println("&nbsp;&nbsp;&nbsp;&nbsp;");
            out.println("<form action='QueryServlet.shtml' method=post>");
            out.println("<input type=hidden name=path value='" + path + "'>");
            out.println("<input name=query> <input type=submit value=查询>");
            out.println("</form>");
            out.println("<br><br><br>");
            // 得到根目录下的文件夹及文件
            File[] files = FileUtils.fileList(path);
            // 过滤隐藏文件,并展现
            out.println("<table align=left border=0 width=700>");
            out.println("<tr>");
            out.println("<th>名称</th><th>类型</th><th>大小</th><th>修改日期</th><th>操作</th>");
            out.println("</tr>");
            for (File f : files) {
                if (!f.isHidden()) {
                    out.println("<tr>");
                    String url = f.isDirectory() ? "DirServlet.shtml?path=" + f.getAbsolutePath() : "ReaderServlet.shtml?path=" + f.getAbsolutePath();
                    out.print("<td><a href='" + url + "'>" + f.getName() + "</a></td>");
                    out.print("<td>" + (f.isFile() ? "文件" : "文件夹") + "</td>");
                    out.println("<td>" + (f.isDirectory() ? "" : (f.length() / 1024) + "KB") + "</td>");
                    out.println("<td>" + new Date(f.lastModified()).toLocaleString() + "</td>");
                    out.print("<td><a href='OperateServlet.shtml?mtype=delete&path=" + f.getAbsolutePath() + "'>删除</a>&nbsp;&nbsp;&nbsp;");
                    out.println("</tr>");
                }
            }
            out.println("</table>");
        } else {
            response.sendRedirect("DiskServlet.shtml"); // 重新得到根目录
        }
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY>");
        out.print("    This is ");
        out.print(this.getClass());
        out.println(", using the POST method");
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }
}
最近下载更多
王晓敏  LV5 2023年7月25日
2827697380  LV2 2022年12月13日
3136132480  LV1 2022年6月8日
Xiang  LV1 2021年11月9日
恋澄堡  LV1 2021年6月9日
dddd123  LV1 2021年6月7日
7ujmnhy6  LV1 2021年4月22日
Muling  LV8 2021年4月13日
yzs123456  LV2 2021年4月10日
zhhyiinii  LV1 2021年1月11日
最近浏览更多
WBelong  LV7 2023年12月25日
1112WHQ  LV7 2023年11月3日
王晓敏  LV5 2023年7月25日
chenranr  LV1 2023年6月26日
1WQAQW1  LV2 2023年6月12日
gym1103 2023年6月5日
暂无贡献等级
HOUYUXIN1  LV1 2022年12月22日
678845 2022年12月17日
暂无贡献等级
2827697380  LV2 2022年12月13日
balabalawuyu  LV6 2022年11月24日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友