qual é a diferença entre a tag cfproperty variável definida ea variável âmbito variáveis ??no ColdFusion?

StackOverflow https://stackoverflow.com/questions/1102599

  •  12-09-2019
  •  | 
  •  

Pergunta

Qual é a diferença entre a tag cfproperty variável definida ea variável âmbito variáveis ??no ColdFusion?

Eu tenho experiência de linguagem Java, você pode comparar a variável cfproperty ColdFusion, o escopo variáveis ??variável para a variável de instância variável e classe Java?

greate obrigado!

Foi útil?

Solução

CFPROPERTY só é útil para fornecer metadados para um componente. A única vez que eu usá-los é ao criar um componente para um Web Service, quando eles são necessários.

Aqui está uma nota técnica que discute CFPROPERTY um pouco mais: http: //kb2.adobe. com / cps / 191 / tn_19169.html

O escopo variáveis ??é "protegido" e só está disponível dentro do componente. Os "isto" variáveis ??de escopo são propriedades públicas. E, claro, qualquer variável declarada com o "var" palavra-chave é privada para esse método.

Aqui está um pouco mais sobre escopos de componentes: http://www.hemtalreja.com/?p=94

Outras dicas

Nota:. Tag cfproperty faz não variáveis ??definidas

No entanto, é útil quando você usa CFC Explorer (browse ao CFC diretamente), de modo que você pode ver as propriedades do objeto CFC.

FYI ... cfproperty será muito mais útil em CF9. Veja: ORM - Rethinking ColdFusion banco de dados Integração

cfproperty é útil quando usando objetos personalizados em métodos remotos. Por exemplo, suponha que eu tinha o seguinte componente:

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

O que eu queria usar como um retorno a um método remoto que está sendo consumida via SOAP. Eu precisaria <cfproperty> etiquetas para cada variável que eu queria para encapsular no objeto retornado, para que esse objeto a ser incluído no documento WSDL como um tipo complexo. Portanto, o componente de cima teria que ser:

<cfcomponent displayname="User">
    <cfproperty name="firstName" type="string" />
    <cfset variables.firstName = "first" />
</cfcomponent>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top