我有一个使用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自动连接到组件的位置。但是,在读取这些属性时,返回的是来自完全不同的名称空间的某些值(某些超时值),所以我认为自己处于错误的境地...
答案 0 :(得分:1)
我假设您也在使用spring,可以使用的是自版本3起可用的配置文件。有关更多信息,请参见此链接:Spring Profiles。您可以在运行时激活配置文件。例如,在application-loadtest.yml中将成为您的负载测试的配置。
或者,您也可以将此属性添加为参数环境变量或命令行参数:Externalized configuration
我希望这会有所帮助。
关于WiPu