簡體   English   中英

我應在javafx中將哪些類型的字段用於Long和Object值

[英]What types of fields shall I use for Long and Object values in javafx

我想在數據庫中存儲使用javafx創建的表的值。 一些值是Long類型的,而其他值是object類型的。 例如:有三個表:“商品”,“價格”和“ TypesOfPrices”。 在這種情況下,第一個具有兩個列:“ id”和“ name”,第三個具有兩個相同的列,第二個具有3個字段:“ price”,“ type_of_price”,“ good”。 這意味着第二個表引用了另外兩個表。 只要我可以使用引用的ID,就無需在數據庫中存儲引用。 但是,從GUI用戶需要具有選擇“良好”或“ TypeOfPrice”類型的值的能力。 所以問題是當用戶添加記錄時,我選擇使用哪種字段類型的shell來包含其他表的記錄的下拉列表。 為此,使用對話框。

理想情況下,要使用JavaFX處理數據,應使用Property 這樣,您將能夠將數據綁定到您的界面。 例如,如果要將字符串綁定到TextField:

StringProperty myStringProperty = new SimpleStringProperty();
myStringProperty.bind(textfield.textProperty());

對於對象TypeOfPrice:

    ObjectProperty<TypeOfPrice> objectProperty = new SimpleObjectProperty();
    Combobox<TypeOfPrice> typeOfPriceList = ...
  objectProperty.bind(typeOfPriceList.getSelectionModel().selectedItemProperty());

我認為您應該僅在控制器中操縱屬性以在視圖和數據之間建立鏈接。

您想將這些數據保存在數據庫中時會感到無聊。

在我的第一次經驗中,我們使用了H2 + JPA + Hibernate。 我們將模型分為兩部分,第一個模型是用Property編寫的,第二個模型是用經典的Java類型(如int,String)編寫的,第二個模型是用JPA注釋的,並且在這兩個模型之間建立了鏈接模型。 看起來像這樣

現在,我們更改了所有因休眠速度太慢而無法滿足我們需求的內容,現在我們將JCR存儲庫用於持久層。 振形jcromFX (指叉Jcrom )映射,它工作正常,你應該看看它替代傳統的H2 DB。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM