Coldfusion Contech CFC - Un esempio di utilizzo
I Componenti Coldfusion sono uno strumento molto potente per creare e referenziare oggetti all'interno del nostro sito o meglio, all'interno del nostro sistema applicativo.
Un esempio di Component può essere il seguente dove viene creta una semplice funzione getCateg per la selezione di categorie all'interno del nostro Blog:
Esempio di CFC (Cold Fusion Component): file: contech.cfc
<cffunction name="getcateg" access="public" returntype="query"
output="false" hint="Seleziona le Categorie del Blog">
<cfquery name="sel_categ" datasource="#request.datasource#">
SELECT cms_categ.id_categ, cms_categ.categ, cms_categ.layout
FROM cms_categ LEFT OUTER JOIN
cms_doc ON cms_categ.id_categ = cms_doc.id_categ
ORDER BY cms_categ.ord, cms_doc.pos desc
</cfquery>
<cfreturn sel_categ>
</cffunction>
</cfcomponent>
Referenziare il componente richiede l'utilizzo di CFINVOKE.
Ma nel nostro sistema si è scelto di portare i componenti CFC a livello di Application per averli sempre a disposizione in un area di memoria condivisa dall'applicazione, l'ambiente Application appunto.
Per fare questo si è scelto di caricare il componente in Application come segue:
<cfscript>
application.myApp = structNew();
application.myApp.contech_compo =
createObject("component", "cfc.contech");
application.init = true; // imposta valore inizializz = si
</cfscript>
</cfif>
A questo punto, caricato il componente nell'area Application, per utilizzarlo, non si deve fare altro che utilizzare:
application.myApp.contech_compo.getcateg()
per avere a disposizione i dati della query Categorie.
E' importante capire che a questi componenti possono essere inviati valori che sono gestiti nel componente come variabili ed eseguire procedure complesse.