servlet怎么获取表单中file标签的文件的绝对路径
纯servlet,没有action,jsp页面中:<formaction="#"method="post"><inputtype="file"name="uploadFi...
纯servlet,没有action,jsp页面中:<form action="#" method="post"><input type="file" name="uploadFile"/> ...</form> ,如何才能在表单跳转的servlet中获取到jsp页面中选择的文件的绝对路径,(以便得到文件的输入流)
展开
2个回答
展开全部
在servlet中应该是获取提交的文件流,而不是获取文件的路径然后通过路径获取流。你要搞清楚,你的JSP页面是面向客户端的。而你的servlet是在服务器上运行的,在服务端获取客户端文件的路径完全没有意义,也获取不到。
更多追问追答
追问
原来如此,那么怎么在服务器端获取客户端的文件流,求代码,不使用struts等框架,纯servlet要怎么获取?
追答
首先需要将from属性:method="post" enctype="multipart/form-data"
后台这样获取流:InputStream in = request.getInputStream();
这种方式应该是只能上传单一的流,不能同时附带参数,所以一般会使用其他的控件来上传。
展开全部
操作如下:
根目录所对应的绝对路径:request.getServletPath();
文件的绝对路径:request.getSession().getServletContext().getRealPath
(request.getRequestURI());
当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath("/");
ServletContext对象获得几种方式:
Javax.servlet.http.HttpSession.getServletContext()
Javax.servlet.jsp.PageContext.getServletContext()
Javax.servlet.ServletConfig.getServletContext()
根目录所对应的绝对路径:request.getServletPath();
文件的绝对路径:request.getSession().getServletContext().getRealPath
(request.getRequestURI());
当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath("/");
ServletContext对象获得几种方式:
Javax.servlet.http.HttpSession.getServletContext()
Javax.servlet.jsp.PageContext.getServletContext()
Javax.servlet.ServletConfig.getServletContext()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询