//test.jsp
<form action="<%=basePath%>test" method="post" ENCTYPE="multipart/form-data">
图片名:<input name="name" type="text"><br>
图片1:<input type="file" name="pic1"><br>
图片2:<input type="file" name="pic2"><br>
<input type="submit" value="提交">
</form>//TestUploadServlet部分代码
DiskFileUpload upload = new DiskFileUpload();
try {
List items = upload.parseRequest(request);
Map fields = new HashMap();
Iterator iter = items.iterator();
while(iter.hasNext()){
FileItem item = (FileItem)iter.next();
if(item.isFormField())
fields.put(item.getFieldName(), item.toString());
else
fields.put(item.getFieldName(), item);
}
FileItem name = (FileItem) fields.get("name");
System.out.println(name);
FileItem uplFile1 = (FileItem)fields.get("pic1");
String pic1 = uplFile1.getFieldName();
FileItem uplFile2 = (FileItem)fields.get("pic2");
String pic2 = uplFile2.getFieldName();
System.out.println("name:"+name+" pic1:"+pic1+" pic2:"+pic2);
我想把pic1和pic2的文件名分别写到数据库的pic1和pic2字段内容里,请教各位大虾如何处理?
<form action="<%=basePath%>test" method="post" ENCTYPE="multipart/form-data">
图片名:<input name="name" type="text"><br>
图片1:<input type="file" name="pic1"><br>
图片2:<input type="file" name="pic2"><br>
<input type="submit" value="提交">
</form>//TestUploadServlet部分代码
DiskFileUpload upload = new DiskFileUpload();
try {
List items = upload.parseRequest(request);
Map fields = new HashMap();
Iterator iter = items.iterator();
while(iter.hasNext()){
FileItem item = (FileItem)iter.next();
if(item.isFormField())
fields.put(item.getFieldName(), item.toString());
else
fields.put(item.getFieldName(), item);
}
FileItem name = (FileItem) fields.get("name");
System.out.println(name);
FileItem uplFile1 = (FileItem)fields.get("pic1");
String pic1 = uplFile1.getFieldName();
FileItem uplFile2 = (FileItem)fields.get("pic2");
String pic2 = uplFile2.getFieldName();
System.out.println("name:"+name+" pic1:"+pic1+" pic2:"+pic2);
我想把pic1和pic2的文件名分别写到数据库的pic1和pic2字段内容里,请教各位大虾如何处理?
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:353)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:310)
com.gzmoblie.servlet.UploadPicServlet.doPost(UploadPicServlet.java:40)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)源代码如下:<form action=" <%=basePath%>test" method="post" enctype="multipart/form-data">
图片名: <input name="name" type="text"> <br>
图片1: <input type="file" name="pic1"> <br>
图片2: <input type="file" name="pic2"> <br>
<input type="submit" value="提交">
</form> public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
FileUpload upload = new FileUpload();
upload.setSizeMax(10000000);
try {
List items = upload.parseRequest(request);
Map fields=new HashMap();
Iterator iter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if (item.isFormField())
fields.put(item.getFieldName(),item.getString());
else
fields.put(item.getFieldName(),item);
FileItem pic1 = (FileItem)fields.get("pic1");
FileItem pic2 = (FileItem)fields.get("pic2");
String name = (String) fields.get("name");
System.out.println(name+pic1+pic2);
try {
item.write(new File("f:/"+pic1.getName()));
item.write(new File("f:/"+pic2.getName()));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}