All pastes #79004 Raw Edit

Someone

public java v1 · immutable
·published 2006-07-04 19:56 UTC
rendered paste body
        Connection what = DbResource.getInstance().DbConnect();        //DelegatingConnection erg = (DelegatingConnection)what;        //System.out.println("wtf? " + erg.getClass());        Connection con = what.getMetaData().getConnection();        System.out.println("con class: "+con.getClass());        /*        if (what instanceof DelegatingConnection) {                con = ((DelegatingConnection) what).getInnermostDelegate();        } else { con = what; }         **/                String sql = "INSERT INTO super_files (file_id, filedata) VALUES (super_files_seq.nextval, EMPTY_BLOB())";                Statement stmt = con.createStatement();                /*        ResultSet lol = stmt.getGeneratedKeys();        while (lol.next()) {            System.out.println("lol? "+lol.getInt(1));        }        */        sql = "SELECT MAX(file_id) FROM super_files";        Statement stmt3 = con.createStatement();        ResultSet res2 = stmt3.executeQuery(sql);        int id = 0;        if (res2.next()) {            id = res2.getInt(1);        }        res2.close();        /*        String sql = "SELECT * FROM (" +                    "SELECT ROW_NUMBER() OVER (ORDER BY chart_id ASC) AS rn," +                    "chart_id,title,description,screenshot_id,thumbnail_id,votes,rating " +                    "FROM super_charts" +                    ") WHERE rn > "+offset+" AND rn <= "+(offset+count);        */        con.setAutoCommit(false);        //sql = "SELECT file_id,filedata FROM (SELECT file_id,filedata,ROW_NUMBER() OVER (ORDER BY file_id DESC) AS rn FROM super_files ORDER BY file_id DESC) WHERE rn > 0 AND rn <= 1";        sql = "SELECT file_id,filedata FROM super_files WHERE file_id = "+id;//+" for update";        //sql = "SELECT file_id FROM super_files";        Statement stmt2 = con.createStatement();        System.out.println("stmt2 class: "+stmt2.getClass());        stmt.close();        ResultSet oRS = stmt2.executeQuery(sql);        System.out.println("MOTHERFUCKING RESULT" + oRS.getClass());        /*        OracleResultSetImpl oRS = null;         oRS = (OracleResultSetImpl)         */        /*        org.apache.tomcat.dbcp.dbcp.DelegatingResultSet hum = (org.apache.tomcat.dbcp.dbcp.DelegatingResultSet)stmt2.executeQuery(sql);        System.out.println(hum.getClass());        //ResultSet oRS = ((org.apache.tomcat.dbcp.dbcp.DelegatingResultSet)stmt2.executeQuery(sql)).getInnermostDelegate();        OracleResultSet oRS = (OracleResultSetImpl)hum.getInnermostDelegate();         System.out.println(oRS.getClass());                 */        //OracleResultSet oRS = (OracleResultSet)res;        /*        if (con.isClosed()) {            System.out.println("oops!");        }        ResultSet rs = null;        try {            rs = stmt2.executeQuery(sql);        } catch (Exception e) {            e.printStackTrace();        }        System.out.println(rs.getClass());        OracleResultSet oRS = (OracleResultSet)rs;                 */        //ResultSet res = stmt2.getResultSet();                int key = 0;        if (oRS.next()) {                    //key = res.getInt(1);            /*            System.out.println("in if: "+oRS.getClass());            if (!(oRS instanceof oracle.jdbc.driver.OracleResultSetImpl)) {                System.out.println("yup");            } else {                System.out.println("nope");            }            oracle.jdbc.driver.OracleResultSetImpl blah = (oracle.jdbc.driver.OracleResultSetImpl)oRS;             */            BLOB fileData = ((OracleResultSet)oRS).getBLOB("filedata");                           int bufferSize = fileData.getBufferSize();                byte buffer[] = new byte[bufferSize];                OutputStream os = fileData.getBinaryOutputStream();                int bytesRead = 0;                while ((bytesRead = in.read(buffer)) != -1) {                    os.write(buffer, 0, bytesRead);                    System.out.println("GRRRRRR");                }                in.close();                os.close();        }        stmt2.close();        //res.close();                con.commit();                return key;