Servlets 使用tomcat 10的ServletFileUpload#parseRequest(请求)中出错

Servlets 使用tomcat 10的ServletFileUpload#parseRequest(请求)中出错,servlets,jakarta-ee,multifile-uploader,tomcat10,parse-request,Servlets,Jakarta Ee,Multifile Uploader,Tomcat10,Parse Request,一个简单的文件上传程序。我必须像使用TomcatV10一样使用jakarta.servlet.*类。我在parseRequest(请求)行上遇到编译时错误 代码: protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{ //TODO自动生成的方法存根 ServletFileUpload sf=新的ServletFileUpload(新的DiskFileItemFa

一个简单的文件上传程序。我必须像使用TomcatV10一样使用jakarta.servlet.*类。我在parseRequest(请求)行上遇到编译时错误

代码:
protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
//TODO自动生成的方法存根
ServletFileUpload sf=新的ServletFileUpload(新的DiskFileItemFactory());
试一试{
List multifiles=sf.parseRequest(请求);
用于(文件项i:多文件){
i、 写入(新文件(“C:/Users/Luffy/Documents/FileUploadDemo/”+i.getName());
}
response.getWriter().print(“文件已上载”);
}捕获(例外e){
//TODO自动生成的捕捉块
e、 printStackTrace();
} 
response.getWriter().print(“文件已上载”);
}

错误如下:

ServletFileUpload类型中的parseRequest方法(javax.servlet.http.HttpServletRequest)不适用于参数(jakarta.servlet.http.HttpServletRequest)

我在谷歌上搜索了很多,但找不到解决方案

请建议解决方法或可能的解决方案。提前谢谢

这是我在堆栈溢出中的第一篇文章。因此,如果有错误,请忽略我的错误:)

您试图使用来自
commons fileupload
的类,该类不适用于
jakarta.servlet.http.HttpServletRequest
。该库必须进行调整,以使用Servlet 5.0类

幸运的是,由于Servlet 3.0(Tomcat 8.0)
多部分/表单数据
请求可以由Servlet解析。你只需要:

  • 向servlet添加注释
  • 使用:
试试看{
最终收集部件=request.getParts();
用于(最终部分:零件){
编写(“C:/Users/Luffy/Documents/FileUploadDemo/”+part.getSubmittedFileName());
}
response.getWriter().print(“文件已成功上载”);
}捕获(例外e){
senderro(HttpServletResponse.SC_内部_服务器_错误,“上载失败”);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        ServletFileUpload sf = new ServletFileUpload(new DiskFileItemFactory());
        try {
            List<FileItem> multifiles = sf.parseRequest(request);
            
            for(FileItem i : multifiles) {
                i.write(new File("C:/Users/Luffy/Documents/FileUploadDemo/"+i.getName()));
            }
            response.getWriter().print("The file is uploaded");
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
        response.getWriter().print("The file is uploaded");
    }