Sviluppo rapido con ColdFusion e CFML

Sperimenta la velocità, la versatilità e la pura gioia nello sviluppare le tue applicazioni web in ColdFusion 8. Tutto ciò di cui hai bisogno è un po 'di spazio sul tuo PC, e 45 minuti.

Panoramica

Potresti aver sentito parlare di ColdFusion o CFML (ColdFusion Markup Language), ma molto presto lo amerai. Perché sprecare tempo a sviluppare 80 righe di codice in una sola lingua quando si potrebbe fare lo stesso in ColdFusion in non più di cinque?

In questo tutorial mireremo a realizzare quanto segue:

  • Stiamo per scaricare e installare Adobe ColdFusion 8 e creare un server di sviluppo sul PC.
  • Scopri le basi della codifica dei tag ColdFusion, comprese le query e la persistenza delle variabili.
  • Stiamo andando a scaricare e installare Railo Express, un motore CFML open source, in alternativa.

Scarica e installa Adobe ColdFusion 8

Innanzitutto, è necessario scaricare una copia di ColdFusion 8 dal seguente percorso: http://www.adobe.com/go/trycoldfusion.
Come tutti i download di Adobe, dovrai effettuare il login o creare un account se non ne possiedi uno. Seleziona la 'Developer Edition' e scegli l'applicazione relativa al tuo sistema operativo, nel mio caso 'English | Windows | 374.8MB'.

Una volta completato il download, esegui il file di installazione e segui i passaggi successivi per completare l'installazione di ColdFusion 8!

Fare clic su Avanti per procedere dalla schermata di introduzione e accettare il Contratto di licenza di ColdFusion 8 alla successiva.

Nella schermata di configurazione dell'installazione, vogliamo installare l'edizione dello sviluppatore, quindi seleziona la casella e fai clic sul pulsante "Avanti".

La schermata di configurazione del server visualizza tre opzioni per l'installazione. Per questo tutorial abbiamo bisogno della prima opzione, 'Configurazione server', che utilizza un server autonomo. Seleziona questa opzione e passa alla schermata successiva.

Qui, possiamo selezionare i sottocomponenti da includere nell'installazione. In questo tutorial non sono richiesti i componenti ".NET Integration Services" o "Adobe LiveCycle Data Services ES", quindi non scegliere quelli, selezionando solo le tre opzioni rimanenti. Fai clic su "Avanti" per procedere.

Per impostazione predefinita, la directory di installazione è C: \ ColdFusion8. Lascia questo com'è. Se si desidera modificare la directory, tenere presente che ulteriori commenti in questo tutorial faranno riferimento a questo percorso di installazione, quindi potrebbe essere necessario adattare i percorsi in base alle proprie modifiche.

Per la configurazione del server Web useremo il 'web server integrato', quindi seleziona questa opzione e fai clic su 'Avanti'.

Selezionare una password per l'accesso all'amministratore di ColdFusion. Inserire questo due volte e fare clic su "Avanti" per procedere.

Seleziona "Abilita RDS" e inserisci una password. Fai clic su "Avanti" per procedere.

Ci sei quasi! La schermata successiva mostra il riepilogo dell'installazione e i dettagli della configurazione di ColdFusion. Notare il numero di porta (8500) sotto l'intestazione "Informazioni sul server". ColdFusion verrà eseguito su questo numero di porta, quindi l'indirizzo del server ColdFusion sarà 'http: // localhost: 8500 /. Fare clic sul pulsante "Installa" e lasciare che i buoni tempi rotolino. L'installer ora farà la cosa e completerà la configurazione per te.

Durante l'installazione, verranno visualizzate varie schermate e messaggi che evidenziano alcune delle opzioni e i vantaggi disponibili quando si utilizza ColdFusion.

Una volta completata l'installazione, ti verrà chiesto di accedere alla Configurazione guidata, che configurerà l'interfaccia di amministrazione per te. L'indirizzo è http: // index ost: 8500 / CFIDE / administrator / index.cfm, ma selezionando l'opzione "Avvia la configurazione guidata nel browser predefinito", l'indirizzo verrà caricato automaticamente per te.

Inserisci la password dell'amministratore che hai definito nelle fasi precedenti dell'installazione e fai clic sul pulsante "Accedi". Questo è tutto. Hai configurato correttamente un server di sviluppo ColdFusion.

Ora viene visualizzata l'interfaccia dell'amministratore di ColdFusion. Ciò consente di controllare tutti gli aspetti del server ColdFusion, aggiungere origini dati, attivare o disattivare l'output di debug, gestire i timeout delle sessioni e delle applicazioni e molto altro ancora. Per ora, non dobbiamo preoccuparci troppo di nulla qui, poiché è impostato per tutto ciò di cui abbiamo bisogno in questo tutorial.

Tag e codifica ColdFusion

Ora che il server ColdFusion è installato, è il momento per l'esempio tipico di Hello World e per imparare le basi di ColdFusion.

Come accennato in precedenza in questo tutorial, ColdFusion è un linguaggio basato su tag e dovrebbe essere comodo per chiunque abbia mai digitato un tag HTML durante la propria vita.
Un vantaggio importante, e uno da ricordare se non è possibile richiamare un nome di tag per una funzione specifica, è che tutti i tag ColdFusion iniziano con il prefisso 'CF'.

Ad esempio, per impostare una variabile si utilizzerà il tag 'cfset'. Per generare dati, dovresti usare il tag "cfoutput". Per eseguire il dump di un ambito o di qualsiasi variabile, si utilizzerà il tag 'cfdump'.
Scommetto che non puoi indovinare quale tag useresti per eseguire una query? Se hai indovinato "cfquery", sei corretto al 100%.

Crea un nuovo file chiamato 'index.cfm' e salvalo nel webroot della tua installazione di ColdFusion (in questo caso, C: \ ColdFusion8 \ wwwroot).
Aggiungi il seguente frammento di codice alla tua pagina .cfm, salvalo di nuovo e visualizza il capolavoro nel tuo browser (http: // localhost: 8500 / index.cfm)

  # # StrHelloWorld

Perfezionare! Sei sulla buona strada per diventare un guru della CF. Allora, cosa abbiamo fatto? Abbiamo creato una variabile stringa "strHelloWorld" utilizzando il tag cfset. Per generare i dati, abbiamo usato i tag cfoutput e abbiamo circondato il nome della variabile con i segni di hash. Questo è quello che diciamo a ColdFusion è una variabile dinamica. Rimuovi i segni di hash da entrambi i lati del testo "strHelloWorld", salva e visualizza nuovamente il file. Capito quello che intendo? Senza i segni di hash, il valore sarà reso come una stringa letterale.

Tempo per una query

Ora proviamo una query. All'interno di CF Adminstrator (http: // localhost: 8500 / CFIDE / administrator / index.cfm) sotto il menu 'datasources', puoi vedere che ci sono alcuni database predefiniti creati per te. Eseguiamo una rapida query su uno dei database.

Aggiungi il seguente codice alla tua pagina index.cfm:

  SELECT firstName, lastName, artistID FROM artists  

Allora, cos'è questo? Usando il tag cfquery precedentemente menzionato, creiamo una nuova query utilizzando il nome dell'origine dati fornito all'interno dell'amministratore.

Tutto il codice SQL, che sia un UPDATE, SELECT, INSERT o DELETE, va all'interno dei tag cfquery.

Abbiamo dato alla query un nome specifico, in questo caso 'qArtists'. Useremo questo nome per fare riferimento alla query e ottenere dati dall'oggetto, che è ciò che stiamo facendo nel tag successivo, 'cfdump'.
Questo tag è essenziale nello sviluppo di ColdFusion e ti consentirà di visualizzare qualsiasi cosa, dalle stringhe alle strutture complesse, agli array e agli oggetti.

Salva il file e visualizza i risultati nel tuo browser.

L'oggetto query è ora visibile sulla pagina, mostrando il set di risultati, il tempo di esecuzione, se la query è stata memorizzata nella cache o meno, e il sql utilizzato per ottenere i risultati.

Passa attraverso i dati

Quindi ora abbiamo i dati, cosa possiamo fare con esso?
Passiamo in rassegna la query e visualizziamo i nomi in un elenco, usando il tag cfloop (ti ho detto che i tag erano facili da ricordare).

Aggiungi il seguente codice alla pagina index.cfm, sotto il dump della query:

 
  • #nome e cognome#

Bello e facile. Finora hai creato e visualizzato una variabile di stringa, eseguito una query su un database, scaricato i valori e generato i risultati utilizzando un ciclo, il tutto in circa 12 righe di codice.
La bellezza dello sviluppo di ColdFusion è il fatto che è rapido, rapido e facile da capire.

Dati persistenti e ambito dell'applicazione

Una parte importante dello sviluppo di ColdFusion è la capacità di conservare dati, informazioni e variabili attraverso l'applicazione. Questo può essere ottenuto facilmente utilizzando l'ambito applicazione e la pagina Application.cfm. Questa pagina si trova nella radice della tua applicazione e viene richiamata su ogni richiesta di pagina, il che significa che tutti i dati contenuti al suo interno sono disponibili su ogni pagina. Questo è perfetto per creare applicazioni dinamiche e scalabili. Un esempio del mondo reale consiste nel trasformare il nome del datasource in una variabile.

Crea un nuovo file chiamato 'Application.cfm' nella tua web root e aggiungi il seguente:

   

Apri la pagina index.cfm nell'editor di file e modifica il nome dell'origine dati per utilizzare la variabile '# application.dsn #' che hai appena creato, quindi il codice ora è simile al seguente:

  SELECT firstName, lastName, artistID FROM artists  

Salvare il file index.cfm e visualizzarlo nel browser.

È ora possibile vedere l'ambito applicazione è stato scaricato nella pagina dal file Application.cfm e la query funziona ancora utilizzando la variabile come nome dell'origine dati.

Variabili URL e convalida

Abbiamo creato un collegamento all'interno del ciclo a page2.cfm, quindi abbiamo bisogno di creare quella pagina e salvarla all'interno della web root. Stiamo inviando la variabile artistID e vogliamo eseguire una nuova query per estrarre le opere d'arte di quel particolare artista.

Aggiungere il seguente codice al file page2.cfm:

   SELECT artName, description, price FROM art WHERE artistID =   

Basandoci su ciò che abbiamo già imparato, stiamo scaricando e visualizzando il contenuto dell'ambito dell'URL. Possiamo vedere che contiene il parametro che abbiamo inviato nell'URL.
C'è una nuova query che esegue un'istruzione SELECT da una nuova tabella 'Art', che estrae i record in cui l'artistID corrisponde a quello inviato nell'URL.

C'è una tag importante nidificata all'interno della query chiamata cfqueryparam, che è un metodo inestimabile per evitare l'iniezione SQL dei valori passati attraverso l'URL o gli ambiti FORM. Se si specificano parametri facoltativi, questo tag esegue la convalida dei dati sul tipo da inviare.

Un tag cfdump finale visualizza l'oggetto query e questa volta mostra anche gli SQLParameters inviati attraverso un oggetto array.

Aggiungere il seguente codice sotto la query in page2.cfm per eseguire nuovamente il ciclo dei dati:

   

# # ArtName
#descrizione#
#prezzo#


Siamo spiacenti, non ci sono record che corrispondono ai tuoi criteri.

Il ciclo è lo stesso di quello scritto in precedenza in questo tutorial, l'unica differenza sono i tag cfif avvolti attorno ad esso, che eseguiranno il ciclo solo se ci sono record all'interno dei risultati della query.

Creare immagini è facile

Uno degli ultimi tag all'interno di ColdFusion 8 è il tag cfimage, che consente agli sviluppatori di creare, visualizzare, salvare e manipolare le immagini al volo. Tanto può essere fatto con questo fantastico tag, ma ti mostrerò un semplice esempio di vita reale per il suo utilizzo.

Creare la tua immagine CAPTCHA non è mai stato così facile. Crea un nuovo file chiamato image.cfm e incolla il seguente codice:

 

Da un tag ColdFusion, hai creato la tua immagine CAPTCHA e l'hai visualizzata direttamente sul browser.

Riferimenti e documentazione di ColdFusion

Ora hai installato ColdFusion 8, hai toccato la superficie di tag e variabili di base, hai eseguito una query e hai contribuito a proteggerlo con la convalida.

Per esplorare gli altri tag, gli esempi di utilizzo e altre funzioni incluse, hai anche la documentazione ColdFusion installata sul tuo computer (supponendo che hai selezionato l'opzione "Documentazione ColdFusion 8" nei passaggi dell'installazione), a cui puoi accedere dal seguente locale indirizzo:


  • Livedocs http: // localhost: 8500 / cfdocs / dochome.htm
  • Riferimento CFML http: // localhost: 8500 / cfdocs / htmldocs / help.html

Se hai deselezionato questa opzione, o forse stai sviluppando su una macchina diversa, i liveocs sono anche disponibili per te online al seguente indirizzo:

http://livedocs.adobe.com/coldfusion/8/htmldocs/index.html

ColdFusion è ben noto per la sua comunità ampia e amichevole. Ci sono una miriade di forum, blog, feed e gruppi da leggere, partecipare o chiedere consigli, quindi sii felice sapendo che non sei mai lontano da una risposta.

CFML Open Source - Ottieni Railo

Un'opzione per un application server CFML veloce e pulito è Railo, il nuovo motore CFML open source. Per questo tutorial, utilizzeremo il pacchetto Railo Express e l'installazione su un server web localhost. Railo è un piccolo motore CFML autonomo che utilizza tutti i tag e le funzioni inclusi in Adobe ColdFusion, oltre a pochi altri che non lo sono. Il download finale è così piccolo e compatto, lo puoi archiviare ed eseguire il server da una chiavetta USB, cosa che faccio, così puoi sviluppare e giocare con CFML in movimento.

Scarica Railo

È possibile scaricare la versione Express visitando la pagina di download Railo e selezionare la versione relativa al proprio sistema operativo

Ora che hai aperto il file zip, estrai il contenuto in una posizione sul tuo disco rigido. Generalmente tendo a posizionarlo nella radice dell'unità C: sebbene sia possibile posizionarlo ovunque preferisca. Personalmente trovo che il nome della cartella generato dall'estrazione del file zip sia troppo lungo. Si potrebbe desiderare di mantenerlo così com'è, ad es. C: \ railo-3.1.0.012-railo-express-6.1.0-3-1-con-jre-windows, oppure si potrebbe voler rinominarlo in C: \ railoExpress o qualcos'altro più facile da ricordare. All'interno della cartella estratta, fai doppio clic sul file 'start.bat' ('start.sh' se usi Linux). Questo file batch imposterà il server per te, creando tutto il necessario per essere installato e funzionante in pochi secondi.

Come puoi vedere dal prompt dei comandi alla fine, il server è stato creato per te sulla porta 8888. Usando il tuo browser di scelta, vai a http: // localhost: 8888 /. Immediatamente, puoi vedere che la pagina index.cfm predefinita mostra e "scarica" ​​dati, variabili e ambiti per mostrare che l'installazione ha avuto successo.

Nella parte superiore della pagina predefinita è presente il collegamento alla console di amministrazione del server Railo, in genere "http: // localhost: 8888 / railo-context / admin / index.cfm".
Ti suggerirei di aggiungere questo link ai preferiti per assicurarti di averlo sempre a portata di mano. Si può finire per sostituire o sovrascrivere la pagina index.cfm e non si vuole rischiare di perdere questo link.
Clicca sul link per procedere alle pagine di amministrazione.

Vi sono fornite due opzioni per l'amministrazione di Railo; Amministratore Web (che configura le impostazioni per sito Web) e Amministratore del server (che configura le impostazioni globali per l'intero server). Seleziona l'opzione 'Server Administrator' e crea la tua password di accesso per l'account.

Le impostazioni all'interno dell'amministratore di Railo sono simili all'interfaccia di amministrazione di ColdFusion, quindi è facile orientarsi.

Tutti i file .cfm che scrivi per il tuo server Railo devono essere collocati nella seguente cartella: C: \ railoExpress \ webroot (anche se questo sarà diverso se hai chiamato la tua cartella Railo qualcos'altro).

L'ultima parola

Durante questo tutorial hai impostato due server CFML, sperimentato la facilità della codifica ColdFusion e acquisito una certa conoscenza dell'ambito dell'applicazione. Quindi, da dove partire? Avrei potuto facilmente scrivere per altre 500 pagine o più condividendo molto più codice, oggetti e funzioni con te, e non vedo l'ora di condividerle di più presto, ma nel frattempo ecco alcune risorse molto utili per te che potrebbero piacerti visitare:

  • Installazione di ColdFusion 8
  • Railo Open Source
  • cfbloggers.org
  • Seguici su Twitter o iscriviti al feed RSS di NETTUTS per ulteriori tuts e articoli di sviluppo web giornalieri.