【发布时间】:2011-09-20 04:44:48
【问题描述】:
我正在尝试在运行时更改 cfg 属性。 例如:
cfg.setProperty("hibernate.connection.url")
问题是它只有在cfg文件本身没有定义这个属性时才起作用, 意思是,它不会覆盖。
可以通过某种方式完成吗?
【问题讨论】:
-
我的猜测是您正在设置此属性,该属性被配置文件覆盖,休眠代码中没有任何其他建议。你能验证一下吗?
-
我检查了休眠代码。 Configuration 类有一个 Properties 类型的成员。当我们调用configure时,这个成员被初始化。如果我们调用 setProperty,我们设置的属性将被覆盖。我的错误是我先调用了 setProperty,然后调用了 configure()。