いかに昨今の言語が再利用性の高い構文構造を提供しているとはいえ、やはり決まりきったスケルトン(コードの骨組み)の記述はなかなか避けられないものです。
例えば、「.jsp」ファイルを例にとると、いつもいつも@pageディレクティブにcontentType属性を記述し、<html>や<head>、<body>タグを書いて……などというのは、意外と面倒なものです。
しかし、本稿でご紹介する「Aston Wizard」を用いることで、あらかじめ用意されたテンプレートからコードのスケルトンを自動生成することが可能になります。また、テンプレートはテキストとして提供されていますので、自分で適宜カスタマイズすることも可能です。
操作手順
(1)「Aston Wizard」プラグインを入手する
「Aston Wizard」プラグインは、以下のサイトから入手することが可能です。その時々の最新安定版をダウンロードしてください。
・http://renaud91.free.fr/Plugins/index_en.html
(2)ダウンロードファイルをインストールする
ダウンロードしたcom.aston.plugins.zipを解凍し、作成された「com.aston.plugins」フォルダをEclipseホーム(本稿では「C:\eclipse」とします)配下の「plugins」フォルダに移動します。
Eclipseがすでに起動している場合には、一度終了したうえで、再度起動してください(コンピュータそのものの再起動は必要ありません)。
(3)「Aston Wizard」を使用する
「Aston Wizard」プラグインを使用するに当たっては、特別な設定は必要ありません。パッケージ・エクスプローラから適当なフォルダを選択し、右クリック、表示されたコンテキストメニューから[新規(W)]→[その他(O)...]を選択します。
左ツリーから[Aston Wizards]をドリルダウンすると、[Pattern]または[Web]を選択することができます。デザインパターンに基づいたJavaクラスを作成したい場合には[Pattern]を、Web上のコンテンツを作成したい場合には[Web]を選択してください。
「Aston Wizard」が標準で対応しているテンプレートは以下のとおりです。
カテゴリ | テンプレート | |
---|---|---|
Pattern | オブジェクト配列 | |
Array | ||
Enumeration | ||
List | ||
Map | ||
Set | ||
Singletonデザインパターン | ||
Factoryデザインパターン | ||
Web | サーブレットクラス | |
JSPファイル | ||
HTMLファイル | ||
XMLファイル | ||
Appletクラス |
ここでは、例えば「Web」-「JSPファイル」を選択してみることにしましょう。「JSP Wizard」が起動しますので、以下の内容について入力してください。
ページ | 設定項目 | 概要 | |
---|---|---|---|
1 | File Path | ファイルの作成先フォルダ(プロジェクト内の絶対パス) | |
File Name | ファイル名 | ||
Template to Use | 使用するテンプレート(デフォルトテンプレートからStruts対応のテンプレートまで可能) | ||
2 | Generate/Map web.xml File | web.xmlにJSPファイルをマッピングするかどうか | |
Servlet/JSP Class Name | ファイル名 | ||
Servlet/JSP Name | web.xml内の論理名 | ||
Servlet/JSP Mapping URL | マッピングするURL | ||
File Path of web.xml | web.xmlの作成先 | ||
Display Name | 表示名 | ||
Description | 備考 |
[終了(F)]ボタンをクリックすると、テンプレートに基づいたファイルが作成されます。
そのほかのサーブレットクラスやHTMLファイルを作成する場合も設定項目が異なるのみで、同じ要領でテンプレートを引用することが可能です。
なお、個々のテンプレートはカスタマイズすることも可能です。「C:\eclipse\plugins\com.aston.plugins\Templates」配下にテンプレートが格納されていますので、適宜、必要に応じて書き換えてみてください。
XML形式で記述されているので、少々分かりにくいかもしれませんが、微修正ならば、ほぼ直感的に行うことができるはずです。
Copyright © ITmedia, Inc. All Rights Reserved.