有关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>