如何为ORM设置动态数据源?

问题描述

| Coldfusion application.cfc中的ORM设置会先运行,然后再运行其他命令(onapplicationstart等)。那么,如何在application.cfc中设置动态数据源(ORM初始化之前的代码)?我们可以在之后进行设置,然后将ORM重新指向动态数据源,但这要求硬编码的数据源也必须有效。这充其量是微不足道的。 这是一个例子:
<cfscript>
this.name = \"someapp_#hash(cgi.http_host)#\";
this.ormenabled = \"true\";
this.ormsettings = { cfclocation = \"config/definitions\",eventhandling = \"true\",datasource=\"STATICDATASOURCE\" };
</cfscript>
如果未在application.cfc范围中指定它,则会出现类似“未为当前应用程序配置ORM”之类的错误。 我们需要能够从服务器上的文本文件获取数据源。     

解决方法

        
this.datasource=\"YourDatasourceName\";
好吧,如果您要存储文件,则在本示例中,我们将其称为“ datasource.xml”,该文件由以下内容组成:
<dataSourceName>Name goes here</dataSourceName>
您可以通过以下方式阅读它:
dataFile = fileRead(\"pathToFile/datasource.xml\");
data = xmlParse(dataFile);
dataSourceName = data.dataSourceName.xmlText;

this.datasource=dataSourceName;
    ,        如果未定义,ORM数据源仅使用默认数据源。 话虽如此,如果您想动态添加/删除数据源,请参阅以下位置的管理员API:http://help.adobe.com/zh_CN/ColdFusion/9.0/Admin/WSc3ff6d0ea77859461172e0811cbf364104-7fcf.html(自CF8起可用) 我不确定是否可以在运行时将
this.ormsettings.datasource
重新设置为其他名称(即
onApplicationStart()
onServerStart()
?),但是可以重新设置许多设置。您可能想尝试一下。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...