默认情况下,hibernate的sql中都是以问号代表参数,并没有显示参数的真实值,但是也不是做不到,只需要两步配置就可以显示出参数的真实值了:
1.spring的配置文件中增加:
<prop key="hibernate.show_sql">true</prop>
或者在hibernate的配置文件中增加:
<property name="show_sql">true</property>
2.在log4j.properties中做如下配置:
log4j.appender.STDOUT.Threshold=trace
log4j.category.org.hibernate.SQL=trace
log4j.category.org.hibernate.type=trace
控制台显示如下:
Hibernate: insert into app_log (time, usr, ip, level, log) values (?, ?, ?, ?, ?)
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding '2010-11-29 14:36:48' to parameter: 1
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding '1' to parameter: 2
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding '127.0.0.1' to parameter: 3
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding 'info' to parameter: 4
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding 'admin login ' to parameter: 5
分享到:
相关推荐
这将让Hibernate在控制台打印出执行的SQL语句,但它们仍然是带有问号占位符的形式。 要显示不带问号的完整SQL,我们需要配置`hibernate.format_sql`属性,设置为`true`。这会使Hibernate输出格式化的SQL语句,并用...
hibernate.format_sql 参数用于在 log 和 console 中打印出更漂亮的 SQL。其取值为 true 或 false。当设置为 true 时,Hibernate 将格式化 SQL 语句,提高可读性和调试效率。 4. hibernate.default_schema ...
|--persistence.xml EJB3的持久化配置文件<br><br> |--DBScript <br> |--employee.sql 数据库脚本及测试数据 <br> |--mysql-connector-java-5.1.5-bin.jar MySql的驱动程序包<br> |--mysql-ds.xml 在JBoss中配置...
- `<appender>`:定义了一个名为 `console` 的控制台输出 Appender。 - `<layout>`:定义了输出格式,包括日期、日志级别、类名等信息。 3. **文件输出配置**: - `<appender>`:定义了一个名为 `file` 的滚动...
在Java开发中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者通过面向对象的方式来操作数据库,而无需直接编写SQL语句。在这个场景中,我们将探讨如何使用Hibernate与SQL Server 2005数据库进行...
- `show_sql` 和 `format_sql`:分别控制是否在控制台显示执行的SQL语句以及SQL语句的格式化。 #### 三、实体映射与持久化 为了实现对象关系映射(ORM),需要为每个业务实体类创建对应的XML映射文件,如`user.hbm...
`spring.jpa.show-sql`开启后,可以在控制台看到执行的SQL语句。最后,指定了JPA提供者为EclipseLink。 接下来,创建实体类。假设我们有一个名为`User`的表,可以创建对应的Java类: ```java import javax....
-- 打印SQL到控制台 --> <property name="show_sql">true</property> <!-- 映射文件 --> <mapping resource="com/example/entity/User.hbm.xml"/> </session-factory> </hibernate-configuration> ``` 接下来...
- `show_sql` 设置为 `true`,会在控制台打印出执行的 SQL 语句,便于调试。 - `mapping` 元素引用了映射文件 `com/User.hbm.xml`,其中定义了对象与表的映射关系。 `User.hbm.xml` 文件是实体类 `User` 与数据库...
- **`hibernate.show_sql`**: 控制是否在控制台显示SQL语句,方便调试。 - **`hibernate.use_sql_comments`**: 是否使用SQL注释。 - **`hibernate.jdbc.fetch_size`**: JDBC的查询结果集大小。 - **`hibernate....
- `show_sql` 属性可控制Hibernate是否在控制台输出执行的SQL语句,这对于调试非常有用。 #### 5. **DDL自动管理** - `hbm2ddl.auto` 属性控制Hibernate如何管理数据库模式。常用的值有:`create`(每次启动时...
- `show_sql`:控制是否在控制台显示执行的SQL语句,对于调试非常有用。 3. **映射文件(mapping)**:指定实体类与数据库表之间的映射关系,`cat.hbm.xml`是具体的映射文件路径。 #### 主键生成策略(Identifier...
4. **显示SQL语句**:设置为`true`表示在控制台输出SQL语句。 5. **SQL格式化**:设置为`true`表示格式化输出SQL语句,便于阅读。 6. **映射文件路径**:指定实体类与数据库表之间的映射文件路径。 #### 实体类与...
6. `show_sql`: 如果设为`true`,Hibernate会在控制台打印执行的SQL语句。 7. `hbm2ddl.auto`: 自动处理数据库表的策略,可选`create`、`create-drop`、`update`或`validate`。 除了核心配置文件外,Hibernate还...
- **Show SQL**: `<property name="hibernate.show_sql">true</property>` 控制Hibernate是否在控制台上显示执行的SQL语句,默认为`false`,开发调试阶段建议设置为`true`。 ##### 3.3 JDBC优化配置 - **Fetch Size...
这样配置后,Hibernate会在项目启动时自动读取`import.sql`文件中的SQL语句并执行。 #### 问题描述 在处理国际化项目时,经常使用UTF-8编码格式来存储和处理数据,以支持多语言环境。然而,`import.sql`文件的字符...
上述配置中的`spring.jpa.hibernate.ddl-auto`用于控制数据库表的自动创建、更新等操作,`spring.jpa.show-sql`则用于在控制台显示执行的SQL语句。 现在,我们创建实体类。假设我们有一个`User`实体,如下所示: `...
- `hibernate.show_sql`:设置为`true`时,Hibernate将会在控制台显示执行的SQL语句,方便调试。 - `hibernate.hbm2ddl.auto`:该属性定义了Hibernate如何处理数据库表结构的更新策略。“update”表示每次启动应用时...
在若依微服务中,我们通常会使用ORM(Object-Relational Mapping)框架如MyBatis或Hibernate来简化数据库交互。这些框架允许我们将SQL语句封装在Java代码中,通过注解或XML配置文件进行管理,从而提高开发效率和代码...
**说明**:设置此属性为 `true` 可以让 Hibernate 在控制台上打印出所有执行的 SQL 语句,便于调试。 ##### 3. 性能优化配置 ```xml <property name="jdbc.fetch_size">50</property> <property name="jdbc.batch_...