完整sql語句輸出的工具類

不多說,上代碼

/**
 * author zz
 */

public class SQLTool {

    /**
     * 去掉sql中的?號,返回執(zhí)行的具體sql
     * @param sql
     * @param params
     * @return String
     */
    public String logSQL(String sql, Object[] params) {

        int _paramNum = 0;
        String _backSql = "";
        if (null != params)
            _paramNum = params.length;
        if (1 > _paramNum) {// 1 如果沒有參數(shù),說明是不是動態(tài)SQL語句
            _backSql = sql;
        } else {// 2 如果有參數(shù),則是動態(tài)SQL語句
            StringBuffer _returnSQL = new StringBuffer();
            String[] _subSQL = sql.split("\\?");
            for (int i = 0; i < _paramNum; i++) {
                if (null != params[i]) {

                    if (params[i] instanceof java.util.Date) {
                        _returnSQL
                                .append(_subSQL[i])
                                .append(" '")
                                .append(this
                                        .util2sql((java.util.Date) params[i]))
                                .append("' ");
                    } else if (params[i] instanceof String) {
                        _returnSQL.append(_subSQL[i]).append(" '")
                                .append(params[i]).append("' ");
                    } else if (params[i] instanceof Integer) {
                        _returnSQL.append(_subSQL[i]).append(" ")
                                .append(params[i]).append(" ");
                    }
                }
            }

            if (_subSQL.length > params.length) {
                _returnSQL.append(_subSQL[_subSQL.length - 1]);
            }
            _backSql = _returnSQL.toString();
        }
        return _backSql;
    }

    /**
     * 轉(zhuǎn)換時間類  java.util.Date->java.sql.Date
     * @param fechaUtil
     * @return java.sql.Date
     */
    private java.sql.Date util2sql(java.util.Date fechaUtil) {
        java.sql.Date _SQL = new java.sql.Date(fechaUtil.getTime());
        return _SQL;
    }

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容