简单的文件上传(javaweb实现)

来源:互联网 发布:nodejs js-xlsx的文档 编辑:程序博客网 时间:2024/05/17 22:59

有关servlet的代码如下:

public class fileServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// InputStream in=request.getInputStream();
// String string=IOUtils.toString(in);
// System.out.println(string);

DiskFileItemFactory factory=new DiskFileItemFactory();//创建工厂
ServletFileUpload fileUpload=new ServletFileUpload(factory);//得到工厂的解析器
try {
List<FileItem> FileItems=fileUpload.parseRequest(request);//通过传入一个request对象得到fileupload的list对象
FileItem fileItem=FileItems.get(0);//得到第一个fileitem对象的
System.out.println("属性的名字为:"+fileItem.getName()+"     值为:"+fileItem.getString("UTF-8"));//得到第一个属性的名字和传入的值
//输出为: 属性的名字为:null     值为:爱你哦
FileItem fileItem2=FileItems.get(1);//得到第二个fileItem对象
System.out.println("文件的名称:"+fileItem2.getName()+"   文件的类型:"+fileItem2.getContentType());//获取文件的名称,以及获取文件的类型
//输出为: 文件的名称:爱你哦   文件的类型:image/jpeg
File file=new File("D://destiny.jpg");//创建该文件的对象
try {
fileItem2.write(file);//将文件保存到了d盘下名字为destiny的图片
} catch (Exception e) {
throw new RuntimeException(e);
}//输出到该文件对象中
} catch (FileUploadException e) {
throw new RuntimeException(e);
}//
}

jsp的代码如下:

 <body>
<form action="<c:url value='/fileServlet' />" method="post" enctype="multipart/form-data">
姓名:<input type="text" name="name"   /><br/>
照片:<input type="file" name="file"/><br/>
<input type="submit" value="提交"  /> 
</form>
  </body>

0 0