Hibernate6 集合對映

2022-09-18 04:54:16 字數 1269 閱讀 8385

集合對映

一.對映set

set是乙個集合介面,它的特性和數學上的集合有點類似,set中存放的是物件的引用,繼承自collection藉口.

特性:    1:不允許存放重複元素。

2:元素是無序。

3:主要有hashset,linkedhashset,treeset 3個實現set介面的具體類。

(1).hashset按照特定的hash演算法訪問物件,效率較高,訪問物件的速度快。

(2).linkedhashset是hashset的子類,它使用鍊錶資料結構訪問,與hashset不同之處在於linkhashset中的元素具有固定的順序

(3).treeset是乙個具有排序功能的集合,實現了sorted介面,在加入物件時,按照集合中的物件進行了排序。但加入使用者自定義時,如student類,則student類需要實現comparable介面排序。

二.對映list

list是乙個集合介面,他繼承自collection介面,list中存放的是物件的引用

特性:    1.list中可以存放重複元素。

2.list中的元素是乙個有序的集合,可以通過索引訪問list中的元素。

3.list主要有arrylist和linkedlist實現set介面的具體類。  

(1).arrylist是乙個可變的陣列,它具有快速讀取物件的特性,但是如果刪除或者插入物件則效率較底;因為每次位置i插入乙個物件時,從位置i+1到最後都要移乙個位置;而每次刪除位置i上的乙個物件,從位置i+1到最後則要前移乙個位置。

(2).linkedlist在內部採用鍊錶的形式儲存資料,因此在刪除和插入物件時會有較高的效率。如果經常需要在list中插入和刪除資料,建議使用linklist;如果list中的物件很少,建議使用arraylistp0aj=79]b

?cui"edu

三.對映bag

bag並不是j**a中的介面,它是hibernate提供的集合,bag中可以有重複的元素,但是bag中的元素並沒有排序。如果有大量的重複資料,標籤的效率比較低,它在更新資料時採用的是先刪除要更新的資料,然後插入資料。使用可以避免這種情況。

四.對映map

map是j**a中的介面,它是一種重要的集合,它使用key/value的方式儲存資料.

**:

08 集合對映 set

實際上,set這種集合對映我們在前面已經學習關聯關係對映時已經用過了,實體類 實體類都在在資料庫中有對應的表 中有一對多或者多對多的關係,並且我們可以通過某一側訪問到另一側,就是通過在類中設定 set集合並配置set對映來實現的。在hibernate配置中有兩種資料型別,一種是值型別,另一種是實體型...

Python基礎6 集合

集合 set 是乙個無序的不重複元素序列 可以使用大括號 或者set 函式建立集合 注意 建立乙個空集合必須用set 而不是 因為 是用來建立乙個空字典集合的建立 用 方式建立集合 可以看出集合是無序的 animals print animals print type animals 用set方式建...

Hibernate 6 種方式實現查詢

昨天剛經歷一場校園招聘,中間和很多技術人寰交流,才明白總結的重要性,因為這一階段一直在寫專案,就把專案中用到的東西總結一番,希望 走一路,能留下點兒什麼。也許這就是成果。我很想從現在做起,使自己能夠真正享受程式設計帶來的快樂,沒有虛榮,沒有競爭,沒有雜念。只有快樂,只有充實,只有無悔。當然我說到做到...