暂时转...明日更新
<form id="addQuestion" method="post" action="/webExam/servlet/TeacherServlet"
target="hidden_frame" encType="multipart/form-data"><label for="title">
题干:
</label>
<input type="text" name="title" id="title" />
<br />
<label for="file">
文件:
</label>
<input type="file" name="file" contentEditable="false" id="file"/>
.......
</form>
然后服务端servlet这样写:
1
|
|
String root=getServletContext().getRealPath("/");
request.setCharacterEncoding("utf-8");
MultipartRequest mr=new MultipartRequest(request, root+"\\files","utf-8");
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
try{//先上传文件,成功了再更新数据库
//题干,源程序存放路径
String title=mr.getParameter("title");
String filename=mr.getFile("file").getName();
System.out.println("title "+title+" filename "+filename);
这样就可以获取text类型的title和file类型的File对象。
如果用HttpServletRequest来获取,那么title会是null
如果用MultipartRequest这个玩意的getParameter("file"),那么返回的也是null,用getFile()获取File对象,然后才能获取它的名字。