初学jsp网页制作,我用jspsmartupload上传文件到服务器上,怎么把上传文件的信息及存储路径存到数据库中!
     我要做的是一个作业上传下载的功能,下载时希望关键字搜索下载,请前辈们帮帮忙,给予指导!
     万分感谢!!!!!
     

解决方案 »

  1.   

    这个很简单的 jspsmart 有一个File类,可以获取到上传的文件的名称,大小,路径,具体方法你可以看一下API文档,如果是多个文件 就用Files类,获取到这些信息之后,以字符串的形式保存到数据库里面!
      

  2.   

    不知道你的上传是否成功,如果成功的话jspsmartupload.jar 中有一个类,可通过对象来获得上传文件的文件名,以及路径名,然后将该值存入数据库。
    数据库字段要用字符串噢
    参考代码:  for(int i=0;i<ymaitak.getFiles().getCount(); i++)
               {
                  File gao=ymaitak.getFiles().getFile(i);
                  
                  if(!gao.isMissing())
                  {
               gao.saveAs("C:/Users/User/tomcat/webapps/upload/"+gao.getFilePathName());
                   }
                }
      

  3.   

    我刚刚实现了一个上传功能 已上传http://download.csdn.net/download/ymaitak/4235120
      

  4.   

    我是用的smartupload已经实现了上传功能!并且也会获取上传文件的文件名,大小,上传前的路径在网页上打印出来!就是不知道如何在上传的过程中如何将获取的信息以及文件上传后在服务器上的路径存入数据库的表中,因为我已经学会了在数据库中实现模糊收索,想通过数据表中的文件信息做筛选下载!而不是单纯的在代码中超链接一个下载!前辈们能给完整一点的代码吗!刚刚学习jsp,只是有想法,基础甚差!谢谢各位了!
      

  5.   

    数据已经取到了,就连接数据库,执行插入数据SQL语句就可以把数据存到数据库中了。筛选下载,你也要在页面筛选好再下载吧?就一个查询+下载的功能就可以实现了
      

  6.   

    我做数据插入,比如说注册就只会用仿DAO方式在页面输入数据插入到数据表,但是像这个在获取数据的同时将数据写入数据库,还有存储的路径怎么放入数据库,不会做啊!能不能给点代码提示啊!刚学的!菜鸟而已,希望前辈们多指导,感激不尽!!!
      

  7.   

    不会在获取数据的同时将数据写入数据库啊!只会模仿DAO模式像注册的方式将数据写入数据库,还有存储的地址怎么写入呢!请前辈们给点代码提示吧!刚刚学习jsp,基础差,请前辈们多多指导,感激不尽!!!!
      

  8.   

    给你举个Oracle 数据库的例子上传功能你已实现,并能获得文件名和路径这个方法getFilePathName()可以得到,并在jsp中显示出来
    <form action="AddfilenameServlet" method="post">
    <input type="text" name="filename" value="对象名.getFilePathName()"/>
    <input type="submit" name="b1" value="提交"/>
    </form>
    这时建立一个Servlet名字为AddfilenameServlet,存在两个默认方法
    在doGet方法中写入doPost(request,response);public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
                             File fl=new File();//存文件属性的类,要先定义啊
                             request.setCharacterEncoding("utf-8");
             String file=request.getParameter("filename");
                             fl.setFilename(file);//将得到的信息存入fl对象中
                                 FileDao fd=new FileDao();
                              fd.方法名(fl);将fl对象传给Dao里面的方法
                          }
    Dao里面的实现很重要,也就是要实现将值存入数据库中
    public class FileDao{
         public int addfile(File fl)
    {   
    int sum=0;
         String sql= "insert into 表名 values (?)";//这里我给你例子,该表名里只有一个字段,
         Connection conn=null;                       
         PreparedStatement stat=null;
         try{
    Class.forName("oracle.jdbc.driver.OracleDriver");
    conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:实例名","用户名","密码");
    stat=conn.prepareStatement(sql);
    stat.setString(1,fl.getFilename());
                            stat.executeUpdate();
                }
              catch(Exception e)//连接数据库要抛异常的
             {
         e.printStackTrace();
             }
    }
    }
    你试试吧,说的已经很细了,希望对你有所帮助。我的时间啊?呵呵
      

  9.   

    谢谢了!今天上来才看到你的方法,模模糊糊的,是我基础太差了!
    我昨天已经做了!只是办法笨了点,用DAO方法连接的数据库并让上传的人自己写入信息,这样还做了关键字模糊查询!下载使用字符流的方式下载的!再次感谢!