mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
refactor
This commit is contained in:
@@ -57,7 +57,6 @@ public class StatFilter extends FilterEventAdapter implements StatFilterMBean {
|
||||
|
||||
private final static Log LOG = LogFactory.getLog(StatFilter.class);
|
||||
|
||||
public final static String ATTR_SQL = "stat.sql";
|
||||
public final static String ATTR_UPDATE_COUNT = "stat.updteCount";
|
||||
public final static String ATTR_TRANSACTION = "stat.tx";
|
||||
|
||||
@@ -228,14 +227,14 @@ public class StatFilter extends FilterEventAdapter implements StatFilterMBean {
|
||||
dataSourceStat.getStatementStat().incrementPrepareCallCount();
|
||||
|
||||
JdbcSqlStat sqlStat = createSqlStat(statement, statement.getSql());
|
||||
statement.getAttributes().put(ATTR_SQL, sqlStat);
|
||||
statement.setSqlStat(sqlStat);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void statementPrepareAfter(PreparedStatementProxy statement) {
|
||||
dataSourceStat.getStatementStat().incrementPrepareCounter();
|
||||
JdbcSqlStat sqlStat = createSqlStat(statement, statement.getSql());
|
||||
statement.getAttributes().put(ATTR_SQL, sqlStat);
|
||||
statement.setSqlStat(sqlStat);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -283,7 +282,7 @@ public class StatFilter extends FilterEventAdapter implements StatFilterMBean {
|
||||
JdbcSqlStat sqlStat = getSqlStat(statement);
|
||||
if (sqlStat == null) {
|
||||
sqlStat = createSqlStat(statement, sql);
|
||||
statement.getAttributes().put(ATTR_SQL, sqlStat);
|
||||
statement.setSqlStat(sqlStat);
|
||||
}
|
||||
|
||||
if (sqlStat != null) {
|
||||
@@ -322,7 +321,7 @@ public class StatFilter extends FilterEventAdapter implements StatFilterMBean {
|
||||
JdbcSqlStat sqlStat = getSqlStat(statement);
|
||||
if (sqlStat == null) {
|
||||
sqlStat = createSqlStat(statement, sql);
|
||||
statement.getAttributes().put(ATTR_SQL, sqlStat);
|
||||
statement.setSqlStat(sqlStat);
|
||||
}
|
||||
|
||||
JdbcStatContext statContext = JdbcStatManager.getInstance().getStatContext();
|
||||
@@ -671,7 +670,7 @@ public class StatFilter extends FilterEventAdapter implements StatFilterMBean {
|
||||
return null;
|
||||
}
|
||||
|
||||
return (JdbcSqlStat) statement.getAttributes().get(ATTR_SQL);
|
||||
return statement.getSqlStat();
|
||||
}
|
||||
|
||||
public JdbcSqlStat getSqlCounter(String sql) {
|
||||
|
||||
@@ -19,6 +19,8 @@ import java.sql.Statement;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.alibaba.druid.stat.JdbcSqlStat;
|
||||
|
||||
/**
|
||||
* @author wenshao<szujobs@hotmail.com>
|
||||
*/
|
||||
@@ -31,6 +33,10 @@ public interface StatementProxy extends Statement, WrapperProxy {
|
||||
List<String> getBatchSqlList();
|
||||
|
||||
String getBatchSql();
|
||||
|
||||
JdbcSqlStat getSqlStat();
|
||||
|
||||
void setSqlStat(JdbcSqlStat sqlStat);
|
||||
|
||||
String getLastExecuteSql();
|
||||
|
||||
|
||||
@@ -28,6 +28,7 @@ import java.util.Map;
|
||||
|
||||
import com.alibaba.druid.filter.FilterChain;
|
||||
import com.alibaba.druid.filter.FilterChainImpl;
|
||||
import com.alibaba.druid.stat.JdbcSqlStat;
|
||||
|
||||
/**
|
||||
* @author wenshao<szujobs@hotmail.com>
|
||||
@@ -43,6 +44,7 @@ public class StatementProxyImpl extends WrapperProxyImpl implements StatementPro
|
||||
protected long lastExecuteCompleteTime;
|
||||
protected long lastExecuteCompleteNano;
|
||||
protected String lastExecuteSql;
|
||||
protected JdbcSqlStat sqlStat;
|
||||
|
||||
protected ArrayList<String> batchSqlList;
|
||||
|
||||
@@ -316,13 +318,13 @@ public class StatementProxyImpl extends WrapperProxyImpl implements StatementPro
|
||||
public boolean isCloseOnCompletion() throws SQLException {
|
||||
throw new SQLFeatureNotSupportedException();
|
||||
}
|
||||
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T> T unwrap(Class<T> iface) throws SQLException {
|
||||
if (iface == Statement.class) {
|
||||
return (T) statement;
|
||||
}
|
||||
|
||||
|
||||
return super.unwrap(iface);
|
||||
}
|
||||
|
||||
@@ -330,4 +332,13 @@ public class StatementProxyImpl extends WrapperProxyImpl implements StatementPro
|
||||
public Map<Integer, JdbcParameter> getParameters() {
|
||||
return Collections.emptyMap();
|
||||
}
|
||||
|
||||
public JdbcSqlStat getSqlStat() {
|
||||
return sqlStat;
|
||||
}
|
||||
|
||||
public void setSqlStat(JdbcSqlStat sqlStat) {
|
||||
this.sqlStat = sqlStat;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user