Webアプリケーションフレームワークが提供するその他の機能としてトランザクションのサポートやデータベースの移行ツールなどが含まれる。 パラメータの付加されたURLをわかりやすいURLに自動的に変換することにより、システムは使いやすく、またさらなる利点としてサーチエンジンがインデックスを作りやすくなる。たとえば、?cat=1&pageid=3で終わるようなアドレスを/category/science/topic/physicsや/science/physicsへの変換するような例である。カテゴリーのIDが変更されてもURLは変わらない(従ってサーチエンジンに対して有利である)。URLの変換により、アプリケーションがREST的な設計方法の一部の要素によりうまく適合できるようにすることができる。 動的なWebページは通常静的な部分 (HTML) とHTMLを生成するコードである動的な部分からなる。HTMLを生成するコードはテンプレート上の変数あるいはコードから生成を行う。生成されるテキストをデータベースから取得することで、サイト内のページの数を劇的に少なくすることができる。 例として 500軒の家を扱う不動産会社を考える。静的なWebサイトでは、不動産会社は500ページ作成する必要があるが、動的なWebサイトでは、不動産会社はただ動的なページを500レコードを持つデータベースに接続するだけでよい。 テンプレートでは、プログラミング言語由来の変数を、コードを使わずに挿入することができるため、Webサイト内のページを更新するためにプログラミングの知識が必要なくなる。HTMLと変数を区別するための記述方法が定義されており、たとえばJSPでは <c:out> タグが変数を出力するために使用され、Smartyでは{$variable} が用いられる。 多数のテンプレートエンジンはIFやFOREACHといった若干の論理タグをサポートしている。これらはビジネスロジック層ないしMVCパターンにおけるM(モデル)との明確な分離を行うため、プレゼンテーション層に必要な決定を行うためだけに用いられる。 Webのキャッシングとは、帯域使用率、Webサーバの負荷、ユーザーに感じられる“ラグ”を削減するための Web文書のキャッシングである。Webキャッシュシステムは、ドキュメントのコピーを保存し、以降のリクエストは一定の条件が満たされればキャッシュから供給すれば問題なくなる。アプリケーションフレームワークには文書をキャッシュし、Webテンプレートシステムをバイパスする機構を提供するものもある。 Ajaxとはインタラクティブなウェブアプリケーションを作成するためのWeb開発手法である。Ajaxの目的はユーザーが変更を要求するごとにWebページ全体がリロードされないようにするため、背後でサーバとのデータのやり取りを少なくし、Webページをより高速に反応するようにすることである。Webページのインタラクティブ性や、速度、ユーザビリティを向上させることが意図されている。 Ajaxプログラミングは複雑であるため、Ajaxサポートを専門に行うAjax フレームワークが多数存在している。他の大きなフレームワークの一部として組み込むことができるものも存在する。たとえば、Prototype JavaScript FrameworkはRuby on Railsに含まれている。 フレームワークには型システムを利用したデータ型のテスト Webサービスの作成と提供を行うツールを提供するツールを備えたフレームワークもある。これらのユーティリティは、その他のWebアプリケーションと同様の機能を提供する。 多数のプログラミング言語に対して関連したWebアプリケーションフレームワークが存在する。しかし、フレームワークに対するより高いレベルのサポートやフレームワークの開発に導く機能を提供したり十分な数の開発者がいる言語もあれば、そうでないものもある。 膨大な数のJavaフレームワークが開発中、ないしは実際に使用されている。これらのフレームワークの多くはJakarta EEプラットフォームの上に構築されているか、ないしは要素を借りてきている。 Javascript framework C#および VB.NET は、マイクロソフトの言語非依存のASP.NETプラットフォーム上で最も人気のある言語である。初期には最も人気のあるWebアプリケーションフレームワークはDotNetNuke
URLマッピング
Webテンプレートシステム詳細は「Webテンプレート」を参照
キャッシュ
Ajax
自動構成
Webサービス詳細は「Webサービス」を参照
技術
プログラミング言語
Java
JavaScript
AngularJS(1.x,2.0α Ver)
Aurelia.js
Backbone.js
Ember.js
Gatsby
Knockout.js
Next.js
Nuxt.js
MooTools
Polymer
Ractive.js
React
Riot.js
Vue.js
C#およびVB.NET