src/org/nutz/dao/impl/sql/SqlTemplate.java
public <T> T queryForObject(String sql,
                                Map<String, Object> vars,
                                Map<String, Object> params,
                                Class<T> classOfT) {
        Sql sqlObj = createSqlObj(sql, params);
        sqlObj.setCallback(new SqlCallback() {
            public Object invoke(Connection conn, ResultSet rs, Sql sql) throws SQLException {
                if (null != rs && rs.next())
                    return rs.getObject(1);
                return null;
            }
        });

        execute(sqlObj, vars, params);
        return sqlObj.getObject(classOfT);
    }
public <T> T queryForObject(String sql,
                                Map<String, Object> vars,
                                Map<String, Object> params,
                                Class<T> classOfT) {
        Sql sqlObj = createSqlObj(sql, params);
        sqlObj.setCallback(new SqlCallback() {
            public Object invoke(Connection conn, ResultSet rs, Sql sql) throws SQLException {
                if (null != rs && rs.next())
                    return rs.getObject(1);
                return null;
            }
        });

        execute(sqlObj, vars, params);
        return sqlObj.getObject(classOfT);
    }
执行一个SQL查询操作，结果为给定对象类型的对象，适用于明确SQL查询结果的类型。

@param sql
包含变量占位符的SQL
@param vars
变量map，无参数时，可为null
@param params
参数map，无参数时，可为null
@param classOfT
对象类型，SQL查询结果所对应的类型，如Date.class等

@return 对象，无查询结果时返回null