ColdFusion はアプリケーションサーバーです。また、Web アプリケーションが様々なバックエンドシステムと通信できるようにする Web プログラミング言語でもあります。ColdFusion を使用すると、ユーザー入力、データベース検索、時間帯などの必要な条件を提供する動的な Web ページを作成できます。ColdFusion ページは、標準の HTML と独自の ColdFusion Markup Language(CFML)で構成されています。

ブラウザーが ColdFusion からリクエストを受け取ると、ColdFusion アプリケーションサーバーはそのページの前処理を実行します。その後、即座に HTML ページを生成し、そのページをブラウザーが表示します。

ColdFusion を使用すると、次のことも実行できます。

  • アプリケーションの迅速な作成、テストおよびデプロイ(ColdFusion は拡張可能で、マルチスレッドに対応しており、サービス指向です)
  • カスタム関数の作成および複数のアプリケーションへの拡張
  • デバッガーを使用したアプリケーションのトラブルシューティングとデバッグ
  • 大半の従来型データベース、最新のデータベース、外部システムとの接続

ColdFusion アプリケーションサーバー

ColdFusion アプリケーションサーバーは、与えられたすべての指示を実際に解析して処理するプログラムです。そうした指示はテンプレートを利用して出します。ColdFusion のテンプレートには、特別なタグを含めます。そのタグで、特定の操作を実行するよう ColdFusion に指示します。

次に例を示します。

<!--- Get names sorted by department --->
<cfquery datasource="company" name="employees">
	SELECT EmpName
	FROM EMPDATA
	ORDER BY DEPTT
</cfquery>

<!--- HTML page --->
<HTML>
<HEAD>
<TITLE>List of employees</TITLE>
</HEAD>
<BODY>
<ul>
<cfoutput query="employees">
	<li>EmpName</li>
</cfoutput>
</ul>
</BODY>
</HTML>

ColdFusion がリクエストを受け取ると、サーバーはテンプレートを解析して、ColdFusion 固有のタグ(CF で始まるタグ)または ColdFusion の変数と関数を探します。

HTML とプレーンテキストは無視され、そのままブラウザーで出力されます。すべての ColdFusion コンストラクトが処理され、結果が Web サーバーに送信されます。その後、Web サーバーは出力全体をリクエスト元のブラウザーに戻します。すべての ColdFusion ファイルには .cfm.cfml のどちらかの拡張子が付いています。次に例を示します。

http://www.example.com/support.cfm

ColdFusion をインストールすると、必ずビルトイン Web サーバーもインストールされます。他の Web サーバーとの競合を避けるために、ColdFusion の Web サーバー(Apache または IIS)はポート 8500 または指定された他のポートで実行されます。

ColdFusion のインストール時に、ColdFusion をスタンドアローンモード(統合型の Web サーバーにバインドされる)で実行するか、既存の Web サーバーを使用するかを選択できます。内部 Web サーバーを使用する場合は、すべての URL でポート番号を指定します。

ColdFusion Markup Language(CFML)

ColdFusion Markup Language(CFML)は、ColdFusion で使用するスクリプト言語です。CFML では、Web アプリケーションの作成を目的として、データベースコマンド、条件演算子、高度な書式制御関数などを使用している標準の HTML ファイルをサポートしています。

ColdFusion のタグは、HTML のタグと同じ形式で記述します。タグは山括弧で囲まれており、0 個以上の属性を指定できます。多くの ColdFusion タグには本文があります。つまり、開始タグと終了タグの間に、処理するテキストを記述します。

ColdFusion アプリケーションのページには、HTML タグに加えて、サーバーサイド CFML タグも含まれます。

CFML は HTML を拡張して次の処理を実行します。

  • スプレッドシート、フラットファイル、区切りファイルなどのデータの読み取りとデータベースや外部アプリケーションへの更新をおこなう。
  • 動的なデータ駆動型のページを作成し、条件付き処理を実行する。
  • バックエンドシステムのリアルタイムデータをフォームに入力し、フォームの送信を処理する。
  • 電子メールメッセージを生成および取得する。
  • リモートファイルにアクセスするために HTTP サーバーや FTP サーバーと通信する。
  • 認証トークンを使用してアプリケーションを保護する。
  • クライアントサイド Cookie の読み書きをおこなう。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー