2011/03/24

[Java] NetBeansでJTableで「Bean Binding」を使ってみる

NetBeansには、「Bean Binding」という便利な機能があって、
その機能を使えば簡単にJTableにデータを設定できるようです。

以下のような機能を持つサンプルを交え、「Bean Binding」を使用してみます。
・「追加」ボタンを押下するとJTableにDTOのデータが追加される。

1.ライブラリを追加する

Bean Bindingを使うので、ライブラリを追加します。
プロジェクトを選択し、右クリック->プロパティを選択します。
ダイアログが開くので、「ライブラリ」を選択します。
その後、ライブラリの追加を押下します。
「Beans Binding」というのがあるので、そちらを選択し追加します。

2.バインドさせるDTOを作成する

バインドさせるためのDTOを作成します。
今回はこんな感じのDTOを作成しました。
  1. public class SampleDTO {  
  2.   
  3.     private String userId;  
  4.     private String userName;  
  5.   
  6.     public void setUserId(String userId) {  
  7.         this.userId = userId;  
  8.     }  
  9.   
  10.     public void setUserName(String userName) {  
  11.         this.userName = userName;  
  12.     }  
  13.   
  14.     public String getUserId() {  
  15.         return userId;  
  16.     }  
  17.   
  18.     public String getUserName() {  
  19.         return userName;  
  20.     }  
  21. }  

3.Bindさせるためのコードを作成する

1でリンクしたライブラリには、Bindを容易にするためのクラスが実装されています。
ObservableCollectionsというクラスで、こちらを使用してBindするためのコードを作成します。

以下のようなコードになります。
  1. public class SampleTable {  
  2.   
  3.     private List<sampledto> sampleDtoList =   
  4.             ObservableCollections.observableList(new ArrayList<sampledto>());  
  5.   
  6.     public List<sampledto> getSampleDtoList() {  
  7.         return this.sampleDtoList;  
  8.     }  
  9.   
  10.     public void setSampleDtoList(List<sampledto> sampleDtoList) {  
  11.         this.sampleDtoList = sampleDtoList;  
  12.     }  
  13.    
  14.  〜〜〜中略〜〜〜  
  15. }  
  16. </sampledto></sampledto></sampledto></sampledto>  

4.追加ボタンのアクションを設定する

追加ボタンを押下したら、SampleTableのsampleDtoListにSampleDTOを追加するコードを作成します。
以下のようなコードになります。
  1. private void btnShowActionPerformed(java.awt.event.ActionEvent evt) {  
  2.   
  3.     SampleDTO dto = new SampleDTO();  
  4.     dto.setUserId("1");  
  5.     dto.setUserName("しがのん");  
  6.     this.sampleDtoList.add(dto);  
  7. }  

5.JTableとDTOを紐付ける

JTableとDTOを紐付けるための設定をします。

JTableを右クリックし、表の内容を選択します。
表示されたダイアログの「バインド」を選択します。

「式をバインド」の箇所に「sampleDTOList」を設定するのがポイントです。

設定が終わったら、列の設定をします。

DTOのプロパティを記述するのがポイントです。

完了したら「閉じる」を押下して完了です。

6.テストする

以上1〜5で「Bean Binding」の設定が完了です。
早速テストしてみます。


追加を押下すると↓


行が追加されています。

すごいシンプルなコードでJTableにデータが追加できました。
この機能がなかったら、ごりごりコードを書くはめでしたが、この機能のおかげですごいシンプルに実装できました。
この機能を使ってDBの結果等もシンプルにJTableに設定できそうです。

0 件のコメント:

コメントを投稿