使用Hibernate,如何仅在开发模式下启用show_sql?我希望在生产环境中禁用
<property name="show_sql">true</property>
,并在开发环境中启用。您应该将与环境相关的信息保存在一个单独的属性文件中。这个文件应该从您的hibernate.cfg.xml或applicationContext.xml中读取。
以下是示例文件:
###########################################################
################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
同样地,您可以添加更多的配置信息。该文件在不同的环境中会有所不同。
Configuration config = new Configuration();
config.setProperty(Environment.SHOW_SQL, "true");
config.buildSessionFactory();
...
然后,您只需要根据您的状态选择true/false,以指示您是否处于开发模式。
ant
? - Eugene Retunsky