String path=getServletContext().getRealPath("/upload/");
myFile.saveAs(path+myFile.getFileName());

解决方案 »

  1.   

    这样不行,String path=getServletContext().getRealPath("/upload/");
    获得的path实际是http://127.0.0.1/mweb/upload/而非http://127.0.0.1/upload。路径不能直接写物理路径,因为发布之后的路径和我本地不同。
      

  2.   

    myFile.saveAs("e:/upload/" + myFile.getFileName());就可以!试试看。我好象是那样的!
      

  3.   

    我在这里问大家一个问题我单独上传文件能够取到文件名字。。可是要跟其他表单一起上传是。我不能把上传的文件的名字保存在数据库中可是其它的表单的值却在数据库中。。上传的文件的名字在数据库中显示  null 不知道为什么??
    请教!!!
      

  4.   

    myFile.saveAs("e:/upload/" + myFile.getFileName());
    在项目中不能这样写啊。因为你并不知道项目发布后用户的实际存放地址。要求是存放到虚拟路径中(不能写死物理路径)。其实问题就归结于如何获取网站的根目录对应的物理路径。
    getServletContext().getRealPath("/")获取的是网站下一个应用程序的根目录。
      

  5.   

    可以这样:String upload_path=request.getRealPath("").replace('\\','/')+"../upload";