jetbrick-orm/src/main/java/jetbrick/dao/jdbclog/JdbcLogCallableStatement.java
public static CallableStatement getInstance(CallableStatement stmt, String sql) {
        InvocationHandler handler = new JdbcLogCallableStatement(stmt, sql);
        ClassLoader cl = CallableStatement.class.getClassLoader();
        return (CallableStatement) Proxy.newProxyInstance(cl, new Class[] { CallableStatement.class }, handler);
    }
public static CallableStatement getInstance(CallableStatement stmt, String sql) {
        InvocationHandler handler = new JdbcLogCallableStatement(stmt, sql);
        ClassLoader cl = CallableStatement.class.getClassLoader();
        return (CallableStatement) Proxy.newProxyInstance(cl, new Class[] { CallableStatement.class }, handler);
    }
Creates a logging version of a PreparedStatement

@param stmt - the statement
@param sql  - the sql statement
@return - the proxy