Есть много отдельных вопросов, которые вы задали, но я постараюсь ответить на них! Вы также не сказали, какую версию ColdFusion вы используете, поэтому я собираюсь ответить с кодом, который будет работать в ColdFusion 8 и выше.
ColdFusion использует специальный файл Application.cfc, который вы помещаете в маршрут вашего веб-приложения (аналогично Global.asax в ASP.Net). В нем есть метод in с именем onApplicationStart, который выполняется только при запуске приложения (поэтому не для каждого запроса). Это отличное место для любых констант. Вот простой пример, который устанавливает структуру (например, карту на других языках), используя синтаксис {}:
Application.cfc
<cfcomponent>
<cffunction name="onApplicationStart">
<!--- set global constants here --->
<cfset application.foo = { a=1, b=2, c="my string" }>
</cffunction>
</cfcomponent>
Если вы хотите получить данные из базы данных, вот простой способ сделать это (есть много других способов, которые, вероятно, лучше, но это должно помочь вам начать!)
<cfcomponent>
<cffunction name="onApplicationStart">
<!--- set global constants here --->
<cfset application.datasource = "mydsn">
<cfquery name="qryConstants" datasource="#application.datasource#">
select key, value
from tblConstants
</cfquery>
<cfset application.constants = {}>
<cfloop query="qryConstants">
<cfset application.constants[ qryConstants.key ] = qryConstants.value>
</cfloop>
</cffunction>
</cfcomponent>
Что касается замены значений в строке, то вы можете сделать что-то вроде этого:
somescript.cfm
<cfsavecontent variable="somestring">
Hello, ${key1} how are you? My name is ${key2}
</cfsavecontent>
<!--- replace the ${key1} and ${key2} tokens --->
<cfloop collection="#application.constants#" item="token">
<cfset somestring = ReplaceNoCase( somestring, "${#token#}", application.constants[ token ], "all" )>
</cfloop>
<!--- show the string with tokens replaced --->
<cfoutput>#somestring#</cfoutput>
Как я уже сказал, есть много способов решить ваш вопрос, однако, надеюсь, вы найдете это хорошей отправной точкой (хотя я не проверял это!).
Удачи и добро пожаловать в ColdFusion!