Download presentation
Presentation is loading. Please wait.
1
CF101: Welcome to ColdFusion
Simon Horwith CIO, AboutWeb LLC CFUNITED – The premier ColdFusion conference
2
Who Am I? CIO, AboutWeb LLC Adobe Certified Expert
Adobe Certified Master Instructor Frequent CFUG and Conference Speaker Editor-in-Chief, CFDJ Magazine Contributing Author of Several Books June 28th – July 1st 2006
3
Who Are You? Web site developer
Looking to add more interactivity to your site Web application developer or development manager who’s heard of ColdFusion Wondering how it works, how easy it is to use, how scalable it is for enterprise apps June 28th – July 1st 2006
4
What We’ll Cover We’ll show: How easy it is to use and how it works
How CF can be used to add interactivity to your site The basics of CF programming: no previous CF experience required How the features of CF make it an ideal platform solution for meeting complex business requirements June 28th – July 1st 2006
5
Topics Introduction to ColdFusion Code Basics Database Integration
ColdFusion Features Q&A June 28th – July 1st 2006
6
Introduction to ColdFusion
ColdFusion is: A leading Server-Side Web Application Development System The leading rapid development platform for the web Very easy to learn and to use OS platform independent A key part of Macromedia’s MX product line June 28th – July 1st 2006
7
Introduction to ColdFusion cont’d
On the web there are 2 classes of web technologies: server-side and client-side Client-side technologies run in a users browser – Flash, JavaScript, Java Applets, etc. Server-side runs on a central server – ColdFusion, .NET, Perl, Ruby, PHP, etc. June 28th – July 1st 2006
8
Introduction to ColdFusion cont’d
Static Web Architecture – user sends an HTTP request to a web server which then returns HTML (along with any client-side technology code) back to the browser for parsing Dynamic Web Architecture – user sends an HTTP request for a dynamic page to a web server. The web server routes the request to the Application Server which parses the server-side technology instructions and sends the resulting text back to the browser for parsing. June 28th – July 1st 2006
9
Introduction to ColdFusion cont’d
ColdFusion files have a .cfm extension The web server hands any request for a .cfm page to the ColdFusion server for processing The ColdFusion server looks through the contents of the page for instructions and ignores all other text (text, HTML, and other client-side technologies may be used in CF pages as the CF Server ignores them and they are sent back to the browser along with the dynamic page output) ColdFusion Instructions are written in CFML June 28th – July 1st 2006
10
Code Basics ColdFusion pages are written in CFML – ColdFusion Mark-up Language CFML is: Like HTML- it is a tag based language Used to tell the ColdFusion server to connect with a database, create a variable, etc. Processed in place. HTML and CFML are often interwoven in order to mark-up the output generated by CF tags June 28th – July 1st 2006
11
Code Basics cont’d CFML tags begin with the letters “CF”
Two very common tags: <CFSET> creates a variable <CFOUTPUT> displays a variable Example: <CFSET firstName = “Simon”> <CFOUTPUT> #Variables.firstname#</CFOUTPUT> June 28th – July 1st 2006
12
Code Basics cont’d Variables in CF: Are case-insensitive Are typeless
Exist for the duration of a request and are then destroyed Have a prefix. A variable prefix tells ColdFusion where this variable exists in memory. ColdFusion will search for a variable in many memory scopes if no prefix is specified. This impacts on performance and readability. June 28th – July 1st 2006
13
Code Basics cont’d <CFOUTPUT>
Has both an opening and closing tag Tells ColdFusion to examine the text between the opening and closing tag and to evaluate any variable or expression surrounded with hash marks (“#”) Any non-CFML text inside <CFOUTPUT> is ignored, which June 28th – July 1st 2006
14
Code Basics cont’d <cfset fname = “Simon”>
<cfset lname = “Horwith”> <cfset fullname = variables.fname & “ “ & variables.lname> <cfset = <cfoutput> Name: <b>#variables.fullname#</b><br> <a href=“mailto:#variables. #”>#variables. #</a> </cfoutput> Would display: Name: Simon Horwith June 28th – July 1st 2006
15
Code Basics cont’d CFML comments are used to comment code and to prevent code from being parsed Example: <!--- this is a ColdFusion Comment ---> June 28th – July 1st 2006
16
Code Basics cont’d CFML not only has tags, but functions as well. There are over 70 tags and over 200 functions in the CFML language. A few types of functions: Date manipulation/formatting Array/structure manipulation String manipulation List manpulation Mathematic operations Etc. June 28th – July 1st 2006
17
Code Basics cont’d Example of how to use functions to retrieve today’s date (now() function) and display it in “mm/dd/yy” format (dateformat() function) <cfoutput> <!--- display today’s date in mm/dd/yy format ---> #dateformat(now(),”mm/dd/yy”)# </cfoutput> June 28th – July 1st 2006
18
Database Integration CF can communicate with virtually any database, including: Microsoft SQL Server Sybase Oracle DB/2 Informix and many more enterprise DBMS’s, as well as desktop DBMS’s such as MS Access June 28th – July 1st 2006
19
Database Integration cont’d
ColdFusion MX uses Java Database Connectivity (JDBC) drivers to connect with databases JDBC drivers translate SQL (Structured Query Language) commands to native binary code that a database understands, pass that binary code to a datasource for execution, and return any returned resultset to the ColdFusion page that invoked it. A datasource is a “named connection” (alias) for a database – it stores the database name, location, server name, login and password, etc. June 28th – July 1st 2006
20
Database Integration cont’d
ColdFusion passes SQL to a datasource using the <CFQUERY> tag <CFQUERY> should always have: Name (assigns a name to the resultset and makes code more readable) Datasource (the DataSource name that points at the database to pass the SQL to) Example: <CFQUERY name=“qEmployees” datasource=“myDSN”> SELECT firstname, lastname FROM employees ORDER BY lastname </CFQUERY> June 28th – July 1st 2006
21
Database Integration cont’d
This code produces an ERROR!! <CFQUERY name=“qEmployees” datasource=“myDSN”> SELECT firstname, lastname FROM employees ORDER BY lastname </CFQUERY> <cfoutput> #firstname# #lastname# </cfoutput> June 28th – July 1st 2006
22
Database Integration cont’d
This code displays only the first row from the recordset <CFQUERY name=“qEmployees” datasource=“myDSN”> SELECT firstname, lastname FROM employees ORDER BY lastname </CFQUERY> <cfoutput> #qEmployees.firstname# #qEmployees.lastname# </cfoutput> June 28th – July 1st 2006
23
Database Integration cont’d
This code loops over each row from the recordset and displays it <CFQUERY name=“qEmployees” datasource=“myDSN”> SELECT firstname, lastname FROM employees ORDER BY lastname </CFQUERY> <cfoutput query=“qEmployees”> #qEmployees.firstname# #qEmployees.lastname# <br> </cfoutput> June 28th – July 1st 2006
24
CF Features: Yes it can do all this… and SO much more!
Tags and functions for creating, reading, renaming, moving, renaming, and deleting files and folders from the local file system Easy access to LDAP (lightweight directory access protocol) resources COM, DCOM, and CORBA support Easy integration with existing Java Applications HTTP functionality Out of the box ease of establishing connections with MANY RDBMS platforms Built-in security framework June 28th – July 1st 2006
25
CF Features cont’d Advanced record-set functionality
Robust graphing and reporting functionality Application architecture that supports persistent memory scopes Over 70 tags and 200 functions built-in to the easy to use and learn CFML programming language Custom Tags and User-Defined Functions An object-oriented framework (ColdFusion Components) that offers OOP features and a layerr of abstraction between business logic and presentation June 28th – July 1st 2006
26
CF Features cont’d Web services support for consumption and publication, ,including support for Java, .NET, and Flash Remoting Applications XML support Web based Administrative interface Platform independent – runs as a standalone server or J2EE application on many platforms PDF and FlashPaper Generation Flash Forms and XML Forms Event Gateways Many online and printed resources SO MUCH MORE! June 28th – July 1st 2006
27
Good Luck! … enjoy ColdFusion! Q & A time June 28th – July 1st 2006
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.