学个java程序 读取一个文件夹下所有文件的完整文件名,存入SQL SERVER数据库里

解决方案 »

  1.   

    public void ReadDir(String dir){
    File tdir=new File(dir);
    if(!tdir.isDirectory())return;
    File[] fs=tdir.listFiles();
    for (int i = 0; i < fs.length; i++) {
    if(fs[i].isDirectory())continue;
    SaveDB(fs[i].getName());
    }
    } private void SaveDB(String name) {
    Connection conn=getConnection();
    Statement stmt=conn.createStatement();
    String sql="insert into "+tableName+" (file) values ("+name+")";
    try{
    stmt.executeUpdate(sql);
    }
    catch(Exception e){

    }

    }
    private Connection createConnection() {
    Connection conn=null;
    try {
    String DRIVER_CLASS= "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName="+DBNAME;
    Class.forName(DRIVER_CLASS);
    conn = DriverManager.getConnection(DATABASE_URL, DATABASE_USER,
    DATABASE_PASSWORD); } catch (Exception e) {
    e.printStackTrace();
    } return conn;

    }
    private Connection getConnection(){
    return conn;
    }大概就是这样的过程,先createConnection(),(当然每次都重新创建新连接也行,但是慢),然后列出目录下的文件写入数据库,写数据库时如果有异常且整个插入文件过程是在一个事务中应该事务回滚conn.rollback()
    另外可以用getAbsolutePath()获取绝对路径