解决方案 »

  1.   


    public class UploadServlet extends HttpServlet { /**
     * 
     */
    private static final long serialVersionUID = 1L; @SuppressWarnings("unchecked")
    public void service(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    request.setCharacterEncoding("utf-8");
    response.setContentType("text/html;charset=utf-8");
    // step1,创建一个DiskFileItemFactory对象
    // 为解析器提供解析时的缺省的配置。
    DiskFileItemFactory dfif = new DiskFileItemFactory();
    // step2,创建一个解析器
    ServletFileUpload sfu = new ServletFileUpload(dfif);
    // step3,使用解析器解析
    try {
    // FileItem对象封装了一个表单域当中的所有的
    // 数据。 List<FileItem> items = sfu.parseRequest(request);
    for (int i = 0; i < items.size(); i++) {
    FileItem item = items.get(i);
    // 要判断是一个普通的表单域还是
    // 上传文件域
    if (item.isFormField()) { // 是一个普通的表单域
    String name = item.getFieldName();
    String value = item.getString();
    System.out.println(name + ":" + value);
    } else {
    // 上传文件域,要将文件保存在服务器端
    ServletContext sc = this.getServletContext(); // 获得实际部署时物理路径
    String path = sc.getRealPath("upload");
    System.out.println(path);
    // 获得上传文件的名称
    String fileName = item.getName();
    System.out.println(fileName);
    File file = new File(path + "//" + fileName);
    System.out.println(file);
    item.write(file);
    }
    } } catch (Exception e) {
    e.printStackTrace(); }
    }}
    这能看明白么?
      

  2.   

    这是前台表单
    <form action="upload" method="post" enctype="multipart/form-data">
    姓名:<input name="name">
    <br/>
    上传文件:<input type="file" name="upload">
    <br />
    <input type="submit" value="提交" />
    </form>
      

  3.   

    http://blog.csdn.net/chenghui0317/article/details/9502143
      

  4.   

    谢谢 基本看明白了 加了   
    common-io.jar 
    common-upload.jar 
    两个包就能用了
      

  5.   

    谢谢 基本看明白了 加了   
    common-io.jar 
    common-upload.jar 
    两个包就能用了
    我的失误,忘跟你说引jar包了