開發人員可以利用Humpic JDBC Logger這個工具監控由Jdbc,Hibernate, iBatis 或其它資料通路工具所産生的SQL語句。
傳統的SQL日志通常隻能看到SQL語句,如“Select * from Table where name=?”, 而對裡面的參數“?”沒法進一步監視。
該日志庫可以完美的解決這個問題,并且可以很友善的和任何系統進行內建,隻要更改資料庫連接配接參數,而不用修改代碼。
下載下傳: http://dl.dbank.com/c05x03ajyb
com.humpic.framework.debug.jdbclog.JdbcLogDriver
Description: Wrapper class for Driver.
DriverManagerDataSource ds = new DriverManagerDataSource();
// ds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
ds.setDriverClassName("com.humpic.framework.debug.jdbclog.JdbcLogDriver ");
ds.setUrl("jdbc:oracle:thin:@localhost:1521:orcl");
ds.setUsername("sa");
ds.setPassword("");
The wrap driver can auto identify following drivers.
- MySQL
- Oracle
- JTDS
- SQL Server 97/2000/2005
- DB2
- SyBase
- PostgreSQL
- HSqlDB
- Derby
- Informix
- TimesTen
- IBM-AS400
- SAP DB
- InterBase
- JDBC-ODBC
If you use other driver, you can add real driver class name into connection url string.
Pattern: CustomizeConnectionUrl =
"jdbclog" ":" [DriverClassName] ":" ConnectionUrl
.
In customize connection url, the DriverClassName is optional.
For Oracle:
jdbclog:oracle.jdbc.driver.OracleDriver:jdbc:oracle:thin:@localhost:1521:orcl
If you use
Jdbc Odbc Bridge
or
Apache Derby
, you must use customize connection url.
For Derby:
jdbclog::jdbc:derby:MyDB;user=test;password=test
日志通過 Log4J 的 debug 級别進行輸出
log4j.rootCategory = INFO, CONSOLE
log4j.logger.com.humpic.framework.debug.jdbclog = DEBUG
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %-4r [%t] %-5p %F:%L - %m%n