cfproperty标签定义变量与ColdFusion中的变量范围变量之间有什么区别?
我有Java语言经验,您可以将ColdFusion cfproperty变量,变量范围变量与Java实例变量和类变量进行比较吗?
感谢谢谢!
答案 0 :(得分:12)
CFPROPERTY仅对提供组件的元数据有用。我唯一使用它们的时候是在需要时为Web服务创建组件。
这是一个技术说明,它进一步讨论了CFPROPERTY:http://kb2.adobe.com/cps/191/tn_19169.html
变量范围是“受保护的”,仅在组件中可用。 “this”范围变量是公共属性。当然,使用“var”关键字声明的任何变量都是该方法的私有变量。
以下是有关组件范围的更多信息:http://www.hemtalreja.com/?p=94
答案 1 :(得分:6)
注意:cfproperty标记执行 NOT 定义的变量。
但是,在使用CFC Explorer(直接浏览到CFC)时很有用,这样就可以看到CFC对象的属性。
FYI ... cfproperty在CF9中会更有用。请参阅:ORM - Rethinking ColdFusion Database Integration
答案 2 :(得分: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>