@Override public void of(AbstractInsert<?> insert) throws SQLException { PreparedStatement statement = null; ResultSet rs = null; try { String sql = insert.toString(); statement = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); Stmt stmt = new PreparedStatementWrapper(statement); insert.prepare(stmt); statement.executeUpdate(); GeneratedKeyCallback keyCallback = insert.getKeyCallback(); if (keyCallback != null) { rs = statement.getGeneratedKeys(); keyCallback.set(rs); rs.close(); } } finally { Jdbc.close(statement); Jdbc.close(rs); } }
@Override public void of(PrimaryKey key, AbstractInsertable entity) throws SQLException { PreparedStatement statement = null; ResultSet rs = null; try { AbstractInsert<?> insert = entity.getInsert(); String sql = insert.toUpdate(key); statement = conn.prepareStatement(sql); Stmt stmt = new PreparedStatementWrapper(statement); insert.prepare(stmt); statement.executeUpdate(); } finally { Jdbc.close(statement); Jdbc.close(rs); } }
@Override public void of(PrimaryKey key, AbstractInsertable entity) throws SQLException { PreparedStatement statement = null; ResultSet rs = null; try { AbstractInsert<?> insert = entity.getInsert(); String sql = insert.toUpdate(key); statement = conn.prepareStatement(sql); Stmt stmt = new PreparedStatementWrapper(statement); insert.prepare(stmt); statement.executeUpdate(); } finally { Jdbc.close(statement); Jdbc.close(rs); } }
@Override public void of(AbstractInsert<?> insert) throws SQLException { PreparedStatement statement = null; ResultSet rs = null; try { String sql = insert.toString(); statement = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); Stmt stmt = new PreparedStatementWrapper(statement); insert.prepare(stmt); statement.executeUpdate(); GeneratedKeyCallback keyCallback = insert.getKeyCallback(); if (keyCallback != null) { rs = statement.getGeneratedKeys(); keyCallback.set(rs); rs.close(); } } finally { Jdbc.close(statement); Jdbc.close(rs); } }