首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

NetBeans 6.0 Beans Binding 技術完整教學:從滑桿綁定到資料庫元件同步

     編輯:Java 相關知識

前言:為何需要 Beans Binding?

過去將 UI 元件連結資料庫或同步屬性值,需手寫工具類、監聽器與事件處理,繁瑣易錯。Beans Binding (JSR 295) 標準化並簡化此流程:僅需宣告「哪些元件的哪些屬性需同步」,其餘由庫自動處理。NetBeans 6.0 將此功能整合進 GUI Builder,所見即所得完成綁定。

基礎範例:滑桿數值同步至文字欄位

  1. 建立 Java Application 專案 NumberSlider。
  2. 新增 JFrame Form NumberSliderFrame。
  3. 從調色盤拖入 JSlider 與 JTextField。
  4. 右鍵 JTextField > Bind > text,Binding Source 選 jSlider1,Expression 選 value int。
  5. 設計檢視中文字欄位自動顯示 50(Slider 預設中間值)。
  6. 執行專案,拖動滑桿,文字欄位即時更新。

進階綁定配置

Bind 對話框的 Advanced 分頁提供細粒度控制:

屬性說明
Name綁定名稱,可程式化引用。
Update ModeREAD_WRITE(雙向)、READ(源→目標)、READ_ONCE(僅初始化)。
Update Source When針對 JTextField/JTextArea:ON_FOCUS_LOST、ON_ACTION_OR_FOCUS_LOST。
Ignore Adjusting針對 JSlider/JTable/JList:拖動/選取過程中不通知,釋放滑鼠後才更新。
Converter自訂類型轉換(實作 org.jdesktop.beansbinding.Converter)。
Validator驗證目標值再回寫源(實作 org.jdesktop.beansbinding.Validator)。
Null/Unreadable Source Value源為 null 或不可讀時的預設值。

資料庫元件綁定實戰

建立實體類別

  1. 專案右鍵 > New > Entity Classes from Database。
  2. 選擇連線與資料表,勾選 Generate Named Query Annotations。
  3. 建立 Persistence Unit (TopLink, Table Generation: None)。

JTable 綁定步驟

  1. 右鍵 JTable > Bind > elements。
  2. Import Data to Form 選擇資料表。
  3. Binding Source 選實體類別對應的 List 物件(如 customerList)。
  4. Binding Expression 留空,Selected 欄位勾選欲顯示欄位。

JList / JComboBox 綁定

  • 同樣 Bind > elements,Binding Source 選 List 物件。
  • Display Expression 選擇顯示用的屬性(如 customer.name)。

特殊合成屬性對照表

Beans Binding 為 Swing 元件新增合成屬性以利綁定:

元件屬性說明
AbstractButtonselected按鈕選中狀態
JComboBoxselectedItem選中項目
JSlidervalue / value_IGNORE_ADJUSTING滑桿值 / 拖動時不通知
JListselectedElement(s) / _IGNORE_ADJUSTING選中元素(列表) / 更新時不通知
JTableselectedElement(s) / _IGNORE_ADJUSTING選中行(列表),回傳 Map / 更新時不通知
JTextComponenttext / text_ON_FOCUS_LOST / text_ON_ACTION_OR_FOCUS_LOST文字內容 / 失焦時同步 / Action 或失焦時同步

結語與延伸閱讀

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved