如果可能,您如何配置 ColdFusion 9 的 ORM 以使用多个 DSN?
是否可以在会话范围而不是应用程序范围的上下文中设置数据源?
或者,在 CF9 中,您如何配置 Hibernate 以使用多个 DSN?
看起来我应该更具体......我正在寻找一种允许基于会话指定 DSN 的解决方案。
这是场景。我们有一个自定义构建的应用程序,它使用从子域确定的多个 DSN。因此,从http://abc.domain.com访问的人将使用 abc DSN,而访问 xyz.domain.com 的人将使用 xyz DSN。DSN 的名称是在创建会话时确定的,并将其存储为会话变量。
我想做这样的事情:
//艺术家.cfc
component persistent="true" datasource="#session.dsn#"
{
property name="artistid" generator="increment";
property firstname;
property lastname;
property address;
property city;
property state;
}
// 应用程序.cfc
component output="false" {
THIS.name = "MultipleDsnORMTest";
THIS.applicationTimeout = createTimeSpan(0, 0, 0, 0);
THIS.clientManagement = false;
THIS.datasource = ""; // Leaving black ==> "No data source specified."
// Setting to cfbookclub ==> "ORM is not
// configured for the current application."
// Setting to cfartgallery works but doesn't
// demonstrate use multiple DSNs
THIS.loginStorage = "cookie";
THIS.sessionManagement = true;
THIS.sessionTimeout = createTimeSpan(0, 0, 0, 0);
THIS.ormenabled = true;
THIS.ormsettings = {};
}