NetBeansは初期の頃から使いやすいAWT/Swing用のGUIデザイナを備えており、これまでもGUIアプリケーションの開発のには定評があった。NetBeans 5.5ではさらにMatisseという新たなGUIビルダを採用し、Visual StudioのGUIビルダに匹敵し得る使い勝手を実現した。
NetBeansのGUIビルダ
このように優れたGUIアプリケーション開発支援機能を搭載しているNetBeansだが、6.0ではさらに以下のような新機能が提供されている。
- カテゴライズされ、使いやすくなったコンポーネントパレット
- Swing Application Frameworkのサポート
- データベースアプリケーション開発のサポート
- Beans Bindingのサポート
本稿ではこれらの新機能を紹介するとともに、NetBeans 6.0でSwingアプリケーションの開発がどのように変わるのかを見ていきたい。
Swing Application Framework
まずNetBeans 6.0でサポートされているSwing Application Frameworkについて簡単に説明しておこう。Swing Application Frameworkは現在JSR-296として標準化が行われているSwingアプリケーション用のフレームワークで、SwingでGUIアプリケーションを開発する際に必ず必要となる以下のような共通機能を提供するものだ。
- アプリケーションのライフサイクル管理
- メッセージやイメージ等のリソースの管理
- アクションの管理
- ウィンドウ状態の保存・復元
JSR-296はJavaSE 7の候補と1つとしても挙げられており、NetBeans 6.0ではいち早くこのフレームワークをサポートしている。
NetBeansでのGUIアプリケーション開発
さて、それでは実際にNetBeans 6.0でのGUIアプリケーションの開発手順を見ていこう。新規プロジェクト作成ウィザードから「Java Desktop Application」を選択する。このウィザードではSwing Application Frameworkを使用した基本的なアプリケーションおよびDBと連携したCRUDアプリケーションのいずれかを作成することができる(筆者の環境ではNetBeans 6.0M9でCRUDアプリケーションを作成するとエラーが発生し、正常に動作するプロジェクトを作成することができなかった)。
Java Desktop Application作成ウィザード
ウィザードで「Basic Application」を選択すると以下のようなプロジェクトが生成される。
ウィザードによって生成されたファイル群
上図のうち、MyDesktopApplicationがアプリケーションのライフサイクルを管理するアプリケーションクラス、MyDesktopFrameが実際のGUIを提供する画面クラスとなる。また、resourcesパッケージ配下にはアプリケーションで使用するイメージなどのリソースと、クラスごとにプロパティファイルが作成されている。プロパティファイルはクラスごとに作成され、そのクラスで使用する文字列やイメージなどのリソースを管理するために用いられる。NetBeans 6.0ではプロパティビューでGUIコンポーネントのプロパティを設定すると、プロパティを画面クラスのソースコードに直接埋め込むのではなく、このプロパティファイルに出力される。プロパティはSwing Application Frameworkによって実行時に画面クラスにインジェクションされるのだ。
また、Swing Application FrameworkはボタンなどのGUIコンポーネントに@Actionというアノテーションを付与したメソッドを紐付ける機能を備えている。GUIビルダ上でGUIコンポーネントを選択し右クリックすると「Set Action」という項目が表示され、コンポーネントから呼び出すメソッドを作成もしくは選択することができる。
アクションの設定
メソッドを新規に作成した場合、画面クラスに以下のようなメソッドの雛形が生成される。このメソッド内にボタン押下時などの処理を記述することになる。
@application.Action
public void execute() {
// put your action code here
}
次は、データベース連携アプリケーションを作ってみよう。
関連情報
-
日本ユニシス、大規模ウェブアプリ開発用フレームワーク「MIDMOST for Java EE」
日本ユニシスは、JBossやBEA WebLogic Serverといったアプリケーションサーバに対応したJava Enterprise Edition仕様準拠の大規模ウェブアプリケーション開発用フレームワーク製品「MIDMOST for Java EE」の販売を開始した。 - Pure Javaビルドツール名前が「Gosling」に--既存プロジェクトと統合
- Ant/Mavenに続け―Wicketコミッタ、Javaのみで記述するビルドツール開発中
- ラウンドアップ:Javaオープンソースの可能性を探る--2007 JavaOne Conferenceレポート
- 日立、Javaアプリ開発環境「MyEclipse」の日本語版とサポートを提供へ
- Sun Microsystems
- サン・マイクロシステムズ
「経営が知るべきバズワード」 の新着情報
-
SAP、第3四半期決算の見通しを下方修正
大手ソフトウェア企業SAPは、第3四半期の売り上げが金融アナリストたちの予想を下回りそうだと、警告を発した。発表を受け、... - マイクロソフト、「SQL Server」を強化するアドオンを開発へ
- 大規模グループウェア「desknet's」新版--ガジェットで手軽に企業ポータル構築可能に
- MS、SQL Server「Kilimanjaro」の詳細を明かし始める
- クラウド? それってうちの会社に関係あるの?
- 経営が知るべきバズワード 一覧へ »
「Java IDE新潮流」 のバックナンバー
-
各製品の特徴と強みは?--「Java IDE新潮流」まとめ読み
連載「Java IDE新潮流」では、さまざまな製品がしのぎを削るJava IDE(統合開発環境)の市場で、特に活気のある製品として「NetBeans 6.0」「Oracle JDeveloper 11g」「MyEclipse」を取り上げ、それぞれの特徴を紹介している。 -
Java IDE新潮流--JavaからAjaxまでばっちり対応:MyEclipse
-
Java IDE新潮流--DBからAjax、UML、ERまでオールインワン:Oracle JDeveloper
-
Java IDE新潮流--第3回 Ruby/Rails開発も可能に:NetBeans 6
-
Java IDE新潮流--第1回 Javaエディタが大幅強化:NetBeans 6.0
- Java IDE新潮流 一覧へ »
ZDNet Japan Essential Topic
-
【今注目のIT企業は何を考える…??】
オススメIT系求人情報も毎週月曜日更新! -
コラボレーション基盤特集
Notes置換とバージョンアップの情報はこちら
企画特集
-
エンタメCGM「gooメーカー☆メーカー」
【第1回】開発者に訊く!各機能と開発の狙いとは -
グリーンITの第一歩は見える化です
経営・財務・情報システムの3つの視点から環境対応を考える -
これからの時代のセキュリティ対策
くるぞ!in the cloudソリューション -
KDDI「SaaSソリューション」
〜社内コミュニケーションの課題への解決策とは〜 -
ZDNet Japan Green IT
サミットだけでは終わらせない!エンタープライズの取り組みはこれからだ! -
Techno Exchange
RackableとCTCの地球にやさしい関係 -
なぜ社内文書は無秩序に分散するのか?
真の文書管理を考える3か条に迫る!
ZDNet Japan イベント
- 開催日:2008年10月23日(木)
- イベント一覧へ»