即使在启用所有属性后,Hibernate也没有记录SQL查询

时间:2017-08-26 19:56:17

标签: java spring hibernate logging

我使用hibernate属性启用日志记录,但我仍然无法看到被激活的SQL查询

这是我的Spring配置代码:

        @Bean
        public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
            final LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();
            em.setDataSource(dataSource());
            em.setPackagesToScan("models");

            final HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
            em.setJpaVendorAdapter(vendorAdapter);
            em.setJpaProperties(hibernateProperties());
            return em;
        }
        private Properties hibernateProperties() {
            return new Properties() {
                {
                    setProperty("hibernate.hbm2ddl.auto", hbm2ddlScheme);
                    setProperty("hibernate.dialect", dbDialect);
                    setProperty("hibernate.globally_quoted_identifiers", "true");
                    setProperty("hibernate.use_sql_comments", "true");
                    setProperty("hibernate.generate_statistics", "true");
                    setProperty("format_sql", formatSQL);
                    setProperty("show_sql", showSQL);
                    setProperty("hibernate.cache.region.factory_class", "org.hibernate.cache.ehcache.EhCacheRegionFactory");
                    setProperty("hibernate.cache.use_second_level_cache", "true");
                    setProperty("hibernate.cache.use_query_cache", "true");
                    setProperty("hibernate.cache.use_structured_entries", "true");
                    setProperty("net.sf.ehcache.configurationResourceName", "myehcache.xml");
                }
            };
        }

我确实看到了会话统计信息。我还想查看正在触发的查询。

1 个答案:

答案 0 :(得分:1)

尝试使用hibernate.show_sqlhibernate.format_sql代替show_sqlformat_sql