5

cfproperty 标签定义变量和 ColdFusion 中的 variables 范围变量有什么区别?

我有 Java 语言经验,您能否将 ColdFusion cfproperty 变量、变量范围变量与 Java 实例变量和类变量进行比较?

非常感谢!

4

3 回答 3

12

CFPROPERTY 仅用于为组件提供元数据。我唯一一次使用它们是在为 Web 服务创建组件时,当需要它们时。

这是一个技术说明,它进一步讨论了 CFPROPERTY:http: //kb2.adobe.com/cps/191/tn_19169.html

变量范围是“受保护的”并且仅在组件内可用。“this”范围变量是公共属性。而且,当然,使用“var”关键字声明的任何变量都是该方法的私有变量。

以下是有关组件范围的更多信息:http ://www.hemtalreja.com/?p=94

于 2009-07-09T13:12:36.047 回答
6

注意:cfproperty 标签没有定义变量。

但是,当您使用 CFC 资源管理器(直接浏览到 CFC)时会很有帮助,这样您就可以看到 CFC 对象的属性。

仅供参考... cfproperty 在 CF9 中将更加有用。请参阅:ORM - 重新思考 ColdFusion 数据库集成

于 2009-07-09T18:50:35.713 回答
0

在远程方法中使用自定义对象时,cfproperty 很有用。例如,假设我有以下组件:

<cfcomponent displayname="User">
    <cfset variables.firstName = "first" />
</cfcomponent>

我想将其用作对通过 SOAP 使用的远程方法的返回。我需要为<cfproperty>要封装在返回对象中的每个变量添加标签,以便将该对象作为复杂类型包含在 WSDL 文档中。因此,上面的组件必须是:

<cfcomponent displayname="User">
    <cfproperty name="firstName" type="string" />
    <cfset variables.firstName = "first" />
</cfcomponent>
于 2009-07-13T04:43:16.687 回答