2013-04-15 3 views
0

У меня есть кнопка загрузки изображения. Я хочу сохранить изображение в папку в моем решении и сохранить путь к базе данных. Я использовал FileUpload1.SaveAs (Server.MapPath (imgPath));Путь к изображению сохранить в базе данных

Но я получил ошибку как

Не удалось найти часть пути 'C: \ Users \ индийское ....... \ ImageStorage \ DSC01420.JPG'.

Как сохранить изображение в папку и путь к базе данных и получить ее.

+0

зависит от среды, в которой вы работаете. одна проблема между браузером заключается в том, что некоторые отправляют имя файла загруженного файла и некоторую полную информацию о пути (теперь угадайте, какой из них предлагает ерунду? ;-)). – collapsar

ответ

1
 **LINK EACH PROGRAMS** 
    -------------------------------------------------------------------------------------- 
<%@ page language="java" contentType="text/html; charset=UTF-8" 
    pageEncoding="UTF-8"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Insert title here</title> 
</head> 
<body> 
<div> 
      <h3> Choose File to Upload in Server </h3>   
      <form action="Recent" method="post" enctype="multipart/form-data"> 

      <input type="file" name="file" /> 
      <input type="submit" value="upload" /> 
      </form>   
     </div> 


</body> 
</html> 
-------------------------------------------------------------------------------------------  
    import java.sql.*; 
    import java.io.*; 

    import javax.servlet.ServletException; 
    import javax.servlet.annotation.MultipartConfig; 
    import javax.servlet.annotation.WebServlet; 
    import javax.servlet.http.HttpServlet; 
    import javax.servlet.http.HttpServletRequest; 
    import javax.servlet.http.HttpServletResponse; 
    import javax.servlet.http.Part; 
    import javax.servlet.annotation.MultipartConfig; 
    import javax.servlet.annotation.WebServlet; 
    import java.util.Hashtable; 
    import java.util.List; 

    import org.apache.commons.fileupload.FileItem; 
    import org.apache.commons.fileupload.ParameterParser; 
    import org.apache.commons.fileupload.disk.DiskFileItemFactory; 
    import org.apache.commons.fileupload.servlet.ServletFileUpload; 


    /** 
    * Servlet implementation class Recent 
    */ 
    @WebServlet("/Recent") 
    @MultipartConfig 
    public class Recent extends HttpServlet { 
     private static final long serialVersionUID = 1L; 

     /** 
     * @see HttpServlet#HttpServlet() 
     */ 
     public Recent() { 
      super(); 
      // TODO Auto-generated constructor stub 
     } 

     /** 
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 
     */ 
     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

      // TODO Auto-generated method stub 
      Sample s1=new Sample(); 
      final String UPLOAD_DIRECTORY = "/home/pradeep/Documents/pradeep/WebContent/Images"; 
      if(ServletFileUpload.isMultipartContent(request)){ 
        try { 
      List<FileItem> multiparts = new 
           ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); 

         for(FileItem item : multiparts){ 
          if(!item.isFormField()) 
          { 
           String name = new File(item.getName()).getName(); 
           item.write(new File(UPLOAD_DIRECTORY + File.separator + name)); 
           String Path= "/home/pradeep/Documents/pradeep/WebContent/Images/" +name; 


           s1.connecting(Path); 


          } 
         } 

          request.setAttribute("message", "File Uploaded Successfully"); 
        } catch (Exception ex) { 
         request.setAttribute("message", "File Upload Failed due to " + ex); 
        }   

       }else{ 
        request.setAttribute("message", 
             "Sorry this Servlet only handles file upload request"); 
       } 



        request.getRequestDispatcher("/Result.jsp").forward(request, response); 




     } 

    } 


    --------------------------------------------------------------------------------------- 
    import java.sql.Connection; 
     import java.sql.DriverManager; 
     import java.sql.PreparedStatement; 
     import java.sql.ResultSet; 
     import java.sql.SQLException; 

     import dbconnections.Connections; 



     public class Sample { 
      Connections con=new Connections(); 

      public void connecting(String Path) 
      { 
       Connection conn=con.Connect(); 

       PreparedStatement pst; 
       String query="INSERT INTO Student1 (Path) values (?)"; 
       try { 

        pst=conn.prepareStatement(query); 
        pst.setString(1,Path); 
        pst.executeUpdate(); 

       } catch (SQLException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 

       // TODO Auto-generated method stub 
      } 


     } 
Смежные вопросы