将休眠配置为暂时使用“ show-sql = false”

时间:2019-06-25 06:09:20

标签: java hibernate jpa

我有一个使用Maven,JPA,Eclipse,Jenkins的Java程序。在开发过程中,我有设置

春天:  jpa:  show-sql:正确

在我的application.yml文件中运行正常。现在,对于负载测试,我拥有大量数据。如果执行测试,它将在Eclipse中正常运行,但在Maven中将失败,因为SureFire插件在如此大的控制台输出上将失败。我可以通过将控制台重定向到文件来使其工作,但是这对于Jenkins无效,并且如果我完全开始测试,则由于我希望明显地在控制台上看到结果,因此它将不起作用。所以我想暂时关闭此设置(show-sql)。我想它必须存在于JPA / Hibernate配置类中的某个位置,但是我找不到任何允许我对其进行更改的组合。

任何建议,我们感激不尽,  斯蒂芬

我想我最接近的是:

entityManager.setProperty( "hibernate.show_sql", false );
entityManager.setProperty( "spring.jpa.hibernate.show_sql", false );
entityManager.setProperty( "javax.persistence.hibernate.show_sql", false );

entityManager自动连接到组件的位置。但是,在读取这些属性时,返回的是来自完全不同的名称空间的某些值(某些超时值),所以我认为自己处于错误的境地...

1 个答案:

答案 0 :(得分:1)

我假设您也在使用spring,可以使用的是自版本3起可用的配置文件。有关更多信息,请参见此链接:Spring Profiles。您可以在运行时激活配置文件。例如,在application-loadtest.yml中将成为您的负载测试的配置。

或者,您也可以将此属性添加为参数环境变量或命令行参数:Externalized configuration

我希望这会有所帮助。

关于WiPu