第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使用JSP / Servlet將文件上傳到服務(wù)器?

如何使用JSP / Servlet將文件上傳到服務(wù)器?

繁星coding 2019-05-21 13:36:36
如何使用JSP / Servlet將文件上傳到服務(wù)器?如何使用JSP / Servlet將文件上傳到服務(wù)器?我試過(guò)這個(gè):<form action="upload" method="post">    <input type="text" name="description" />    <input type="file" name="file" />    <input type="submit" /></form>但是,我只獲取文件名,而不是文件內(nèi)容。當(dāng)我添加  enctype="multipart/form-data"到<form>,然后request.getParameter()返回null。在研究期間,我偶然發(fā)現(xiàn)了Apache Common FileUpload。我試過(guò)這個(gè):FileItemFactory factory = new DiskFileItemFactory();ServletFileUpload upload = new ServletFileUpload(factory);List items = upload.parseRequest(request); // This line is where it died.不幸的是,servlet拋出了一個(gè)沒有明確消息和原因的異常。這是堆棧跟蹤:SEVERE: Servlet.service() for servlet UploadServlet threw exceptionjavax.servlet.ServletException: Servlet execution threw an exception    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:313)    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)    at java.lang.Thread.run(Thread.java:637)
查看完整描述

5 回答

?
墨色風(fēng)雨

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊

我正在為每個(gè) Html表單使用公共Servlet,無(wú)論它是否有附件。此Servlet返回一個(gè)TreeMap鍵,其中鍵是jsp名稱參數(shù)和值是用戶輸入并將所有附件保存在固定目錄中,稍后您重命名所選目錄.Here Connections是具有連接對(duì)象的自定義接口。我想這會(huì)對(duì)你有所幫助


public class ServletCommonfunctions extends HttpServlet implements

        Connections {


    private static final long serialVersionUID = 1L;


    public ServletCommonfunctions() {}


    protected void doPost(HttpServletRequest request,

            HttpServletResponse response) throws ServletException,

            IOException {}


    public SortedMap<String, String> savefilesindirectory(

            HttpServletRequest request, HttpServletResponse response)

            throws IOException {

        // Map<String, String> key_values = Collections.synchronizedMap( new

        // TreeMap<String, String>());

        SortedMap<String, String> key_values = new TreeMap<String, String>();

        String dist = null, fact = null;

        PrintWriter out = response.getWriter();

        File file;

        String filePath = "E:\\FSPATH1\\2KL06CS048\\";

        System.out.println("Directory Created   ????????????"

            + new File(filePath).mkdir());

        int maxFileSize = 5000 * 1024;

        int maxMemSize = 5000 * 1024;

        // Verify the content type

        String contentType = request.getContentType();

        if ((contentType.indexOf("multipart/form-data") >= 0)) {

            DiskFileItemFactory factory = new DiskFileItemFactory();

            // maximum size that will be stored in memory

            factory.setSizeThreshold(maxMemSize);

            // Location to save data that is larger than maxMemSize.

            factory.setRepository(new File(filePath));

            // Create a new file upload handler

            ServletFileUpload upload = new ServletFileUpload(factory);

            // maximum file size to be uploaded.

            upload.setSizeMax(maxFileSize);

            try {

                // Parse the request to get file items.

                @SuppressWarnings("unchecked")

                List<FileItem> fileItems = upload.parseRequest(request);

                // Process the uploaded file items

                Iterator<FileItem> i = fileItems.iterator();

                while (i.hasNext()) {

                    FileItem fi = (FileItem) i.next();

                    if (!fi.isFormField()) {

                        // Get the uploaded file parameters

                        String fileName = fi.getName();

                        // Write the file

                        if (fileName.lastIndexOf("\\") >= 0) {

                            file = new File(filePath

                                + fileName.substring(fileName

                                        .lastIndexOf("\\")));

                        } else {

                            file = new File(filePath

                                + fileName.substring(fileName

                                        .lastIndexOf("\\") + 1));

                        }

                        fi.write(file);

                    } else {

                        key_values.put(fi.getFieldName(), fi.getString());

                    }

                }

            } catch (Exception ex) {

                System.out.println(ex);

            }

        }

        return key_values;

    }

}


查看完整回答
反對(duì) 回復(fù) 2019-05-21
  • 5 回答
  • 0 關(guān)注
  • 1069 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)