首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅限HIbernate show_sql开发

仅限HIbernate show_sql开发
EN

Stack Overflow用户
提问于 2012-04-24 07:27:04
回答 2查看 3.9K关注 0票数 3

使用hibernate,我如何才能仅在开发模式下启用show_sql?我要那个

在生产环境中禁用<property name="show_sql">true</property>,在开发环境中启用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-24 11:48:28

您应该将与环境相关的信息保存在单独的属性文件中。应从您的hibernate.cfg.xmlapplicationContext.xml.读取此文件

以下是示例文件

代码语言:javascript
复制
###########################################################
################DATABASE INFORMATION ######################
###########################################################
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/appDB1
jdbc.username=root
jdbc.password=root


# Set Hibernate properties
hibernate.show_sql=true
hibernate.format_sql=false

同样,您可以添加更多配置信息。这个文件在不同的环境中会有所不同。

票数 2
EN

Stack Overflow用户

发布于 2012-04-24 09:12:30

我从你的问题中假设“处于开发模式”是你的代码在运行时就知道的,否则你只需要修改配置文件中的标志即可。

在这种情况下,您可以在运行时以编程方式设置show_sql属性(或任何其他属性):

代码语言:javascript
复制
Configuration config = new Configuration();
config.setProperty(Environment.SHOW_SQL, "true");
config.buildSessionFactory();
...

然后,您只需根据指示您是否处于开发模式的状态来选择true/false。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10289684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档