log4jdbc 可以将占位符与参数全部合并在一起显示,方便直接拷贝
sql
在
PLSQL Developer
等客户端直接执行,加快调试速度. 记录执行的sql及其耗时等.
1.测试代码
package com.mtea.demo.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Demo {
private static Logger logger = LoggerFactory.getLogger(Demo.class);
public static void main(String args[]) {
test_without_log4jdbc_effect();
test_with_log4jdbc_effect();
}
/**
* no log4jdbc
*/
public static void test_without_log4jdbc_effect(){
//mysql-connector-java-5.1.10-bin.jar提供的类
String driverNameOfMysql = "com.mysql.jdbc.Driver";
String connStringOfMysql = "jdbc:mysql://localhost:3306/db_hibernate";
Connection conn = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
try {
Class.forName(driverNameOfMysql);
conn = DriverManager.getConnection(connStringOfMysql, "root", "root");
pstmt = conn.prepareStatement("select name from tb_product where id=?");
pstmt.setInt(1, 1);
rs=pstmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("name"));
}
rs.close();
} catch (Exception e) {
logger.error("test_without_log4jdbc_effect 出错", e);
} finally {
logger.info("test_without_log4jdbc_effect finished");
}
}
/**
* with log4jdbc_effect
*/
public static void test_with_log4jdbc_effect(){
//log4jdbc4-1.2beta2.jar提供的类
String driverName = "net.sf.log4jdbc.DriverSpy";
String connString = "jdbc:log4jdbc:mysql://localhost:3306/db_hibernate";
Connection conn = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
try {
Class.forName(driverName);
conn = DriverManager.getConnection(connString, "root", "root");
pstmt = conn.prepareStatement("select name from tb_product where id=?");
pstmt.setInt(1, 1);
rs=pstmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("name"));
}
rs.close();
} catch (Exception e) {
logger.error("test_with_log4jdbc_effect 出错", e);
} finally {
logger.info("test_with_log4jdbc_effect finished");
}
}
}
2.运行结果:
3.项目配置:
4.过滤日志:
<logger name="jdbc.connection" level="ERROR"/>
<logger name="jdbc.audit" level="ERROR"/>
<logger name="jdbc.sqlonly" level="ERROR"/>
<logger name="jdbc.resultset" level="ERROR"/>
<logger name="log4jdbc.debug" level="ERROR"/>
5. over
- 大小: 68.3 KB
- 大小: 27.7 KB
分享到:
相关推荐
logback日志的yml文件 logging: level: root: info org.springframework: info com.beijin.limengya.mobile.dao: ERROR com.beijin: debug ... liquibase.executor: ERROR liquibase.lockservice: ERROR ... # l
### 日志框架log4j和slf4j入门教程知识点详解 #### 一、Log4j简介 **Log4j** 是Apache组织下的一个开源项目,主要用于Java应用程序的日志记录功能。通过Log4j,开发者可以灵活地控制日志信息的输出格式、输出目的...
在搭建开发环境时,需要将 Hibernate 框架的库文件(包括所需的 JAR 包)添加到项目中,还需要 SLF4J 和 Log4J 的实现库,以及相应的 JDBC 驱动 JAR 包。 例如,创建一个简单的 Hibernate 应用,可以定义一个名为 `...
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p --- [%50t] %-80c(line:%5L) : %m%n ``` 为了连接数据库,还需要...
- `slf4j-api.jar`和相应的实现(如`slf4j-log4j12.jar`):日志记录框架,Hibernate使用它来输出日志信息,便于调试和监控。 在实际开发中,将这些jar包添加到项目的类路径中,就可以开始使用Hibernate进行数据库...
5. Log4j打印日志:Log4j是一个广泛使用的日志记录框架,它可以帮助开发者追踪程序运行状态和调试问题。在`pom.xml`中添加Log4j依赖后,我们可以在代码中使用`Logger`对象记录信息。例如,`logger.info("User loaded...
1. JDBC与ODBC:讲解如何使用Java的JDBC接口和通用的ODBC接口连接Oracle数据库,进行数据操作。 2. PL/SQL编程:深入学习PL/SQL语言,包括流程控制、异常处理和包的使用。 3. APEX与Oracle Application Express:...
为了简化日志配置,可以从Hibernate的`etc`目录复制`log4j.properties`文件到项目的Classpath中,并修改其中的日志级别。例如,可以将`log4j.logger.org.hibernate`设置为`error`,以便仅在出现错误时记录日志。 ...
5. 其他可能的依赖,如日志库(log4j或slf4j)、单元测试库(JUnit)等。 接下来,我们来详细探讨MyBatis入门的几个关键步骤: 1. **项目搭建**:首先在IDEA中创建一个新的Maven项目,然后在`pom.xml`文件中添加...
**MyBatis入门教程——使用MyBatis完成CRUD操作** MyBatis是一个优秀的Java持久层框架,它简化了数据库操作,将SQL语句与Java代码分离,使得开发者能够更专注于业务逻辑。本教程将带你逐步了解如何使用MyBatis进行...
此外,学会使用日志框架(如Log4j)来记录和分析应用运行情况也很重要。 综上所述,"Java Web从入门到精通光盘17-1"涵盖了Java Web开发的基础和进阶知识,读者在学习过程中需注意自行配置环境,特别是jar文件的获取...
3. **公共库管理**:将公共库(如JDBC驱动、log4j等)放置于`$JBOSS_HOME/server/default/lib`,避免重复加载,节省内存资源。 4. **日志配置**:`log4j.xml`文件位于`$JBOSS_HOME/server/default/conf`,用于定制...
"Eclipse开发入门与项目实践 源代码 part4"是针对初学者或者希望深化Eclipse使用技巧的学习者提供的一系列资源。这部分源代码主要包含了名为"ShopAdmin"的程序,它可能是一个小型的管理应用程序,用于商店后台的运营...
7. **日志管理**:Spring Boot 默认使用 Logback 或 Log4j2 进行日志记录,你可以通过配置文件(application.properties 或 application.yml)调整日志级别和输出格式。 8. **测试支持**:Spring Boot 提供了丰富的...
MyBatis消除了几乎所有的JDBC代码和手动设置参数,提供了一个动态的SQL、易于使用的API,使得开发者能够将精力集中在编写SQL和Java代码的业务逻辑上。它的主要组成部分包括XML映射文件、Mapper接口和SqlSession对象...
需要注意的是,虽然Log4j不是必需的,但很多开发者出于日志记录的目的会选择使用它。 要搭建Hibernate环境,开发者需要创建一个JavaBean类,该类代表希望存储在数据库中的对象。这个类会包含一些属性,每个属性都...
Struts1是一个经典的Java Web开发框架,它在20世纪末至...同时,了解log4j和properties文件的使用,也有助于提升应用的可维护性和扩展性。通过实践,开发者可以更好地理解MVC模式,为后续更复杂的项目打下坚实的基础。
3. **必要和建议的jar库**:除了hibernate2.jar之外,还有多个jar库是必需的或建议使用的,如dom4j、CGLIB、CommonsCollections、CommonsLogging、ODMG4、EHCache以及Log4j。 - **dom4j**:用于XML解析,是...
- **Log4j**:可选,用于日志记录,若选择使用,需要将log4j.jar添加到类路径中。 - **Java Transaction API (JTA)**:Hibernate还依赖于Java Transaction API进行事务管理,因此需要将jta.jar添加到项目中。 综...