Coldfusion Application.cfc中的组件级属性

Coldfusion Application.cfc中的组件级属性,coldfusion,application.cfc,Coldfusion,Application.cfc,如果我的application.cfc中有组件级属性,它们会在每次创建页面时进行评估,还是只在创建应用程序时进行评估 <cfcomponent> <cfscript> this.name = "WARM2_Demo"; this.applicationTimeout = CreateTimeSpan(1,0,0,0); this.setClientCookies = true; this.setDom

如果我的application.cfc中有组件级属性,它们会在每次创建页面时进行评估,还是只在创建应用程序时进行评估

<cfcomponent>
    <cfscript>
        this.name = "WARM2_Demo";
        this.applicationTimeout = CreateTimeSpan(1,0,0,0);
        this.setClientCookies = true;
        this.setDomainCookies = false;
        this.sessionManagement = true;
        this.sessionTimeout = CreateTimeSpan(0,0,30,0);
        this.clientManagement = false;
        this.scriptProtect = true;

        this.appDirectory = getDirectoryFromPath(getCurrentTemplatePath());
        this.fileSeparator = createObject("java","java.lang.System").getProperty("file.separator");

         ....

    </cfscript>

    <cffunction name="OnApplicationStart" returntype="boolean">
        <cfscript>
            setupApplication();
            return true;
        </cfscript>
    </cffunction>

        ....

</cfcomponent>

this.name=“WARM2\u Demo”;
this.applicationTimeout=CreateTimeSpan(1,0,0,0);
this.setClientCookies=true;
this.setDomainCookies=false;
this.sessionManagement=true;
this.sessionTimeout=CreateTimeSpan(0,0,30,0);
this.clientManagement=false;
this.scriptProtect=true;
this.appDirectory=getDirectoryFromPath(getCurrentTemplatePath());
this.fileSeparator=createObject(“java”、“java.lang.System”).getProperty(“file.separator”);
....
setupApplication();
返回true;
....

我认为每次请求页面时都会进行评估

将它们粘贴到ApplicationStart()上的
应用程序
范围中


但老实说,文件分隔器??只要使用
/
,它就可以在Windows和*nix操作系统上正常工作。:)

Application.cfc的伪构造函数将在每个请求中执行

基本上,每个请求都会在后台创建Application.cfc的实例,并且该实例化的行为与任何其他cfc实例化一样:伪构造函数位(位于CFCOMPONENT标记内,但在任何CFFUNCTION/function声明之外)运行

运行伪构造函数后,将运行任何适当的事件处理程序/侦听器方法,例如:onRequestStart()


NB:您可以通过在其中输出一些东西来轻松地测试这一点。它将在每次请求时显示在屏幕上(使其成为getTickCount()或createUuid()调用,以便您可以看到它的变化)。

只要JVM支持,文件分隔符就可以保证工作。我知道这不太可能,但你永远不知道这个应用可能运行的windows或其他操作系统的某个版本是否不支持它。我一直看到“NB:”到处都是。它代表什么?@Adam:“NB:”代表“Nota bene”(拉丁语)或“Notez bien”(法语),意思是“请注意”: