国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java - Hibernate如何處理參數數量不定的實體類

瀏覽:138日期:2023-12-01 18:30:50

問題描述

假設一個對象Object有若干個參數,而參數的名稱和數量是不確定的,想知道這種情況下數據表應該怎么設計才會更適合Hibernate去操作.之前我弄過一個方案(想聽大神吐槽):一共用到了兩個表:一個是tab表,一個是tabmeta表,并將tabmeta表中的tid參照tab的id創建外鍵(其實不想在數據庫中創建出這個關系,想在程序或者DAO層實現這樣的關系).java - Hibernate如何處理參數數量不定的實體類創建出對應的實體類(用InteliJ IDEA的逆向工程直接通過表生成的):

//tab的實體類@Entity@Table(name = 'tab', schema = 'springfkhibernate', catalog = '')public class TabEntity { private int id; private String name; private Map<Object, TabmetaEntity> tabmetasById; //省略一些該有的函數和geter seter @MapKey(name = 'metakey') @OneToMany(mappedBy = 'tabByTid') public Map<Object, TabmetaEntity> getTabmetasById() {return tabmetasById; } public void setTabmetasById(Map<Object, TabmetaEntity> tabmetasById) {this.tabmetasById = tabmetasById; }}//tabmeta的實體類@Entity@Table(name = 'tabmeta', schema = 'springfkhibernate', catalog = '')public class TabmetaEntity { private int id; private String metakey; private String metavalue; //省略該有的getter和setter}

生成的時候的參數:java - Hibernate如何處理參數數量不定的實體類但是這樣會搞出兩個實體類出來,一個是TabEntity,一個是TabValueEntity,強迫癥表示不爽啊,本來這兩個表描述的是一個實體的問題,而不是兩個具有一對多的兩個對象的關系.現在我想問一下能不能實現在TabEntity中準備一個類型為(Hash)Map的變量metas,專門用來存儲這些不確定的參數,這樣就只有一個實體類了.但是這樣的話,數據在回存數據庫的時候又應該怎么實現呢?現在這種方式產生的實體類如果想要訪問其中的某一個不定參數的話,需要:TabDao.getEntity(...).getTabmetasById().get(’somekey’).getMetaValue()來實現,但是如果把這兩個表的數據理解成一個實體的數據的話就應該這么實現:TabDao.getEntity(...).getMeta(’somekey’)不知道大神有沒有針對這方面的建議....另外想問問大神在IDEA的關系創建的對話框中每一項參數會產生怎樣的影響.java - Hibernate如何處理參數數量不定的實體類困惑比較大,還望大神們賜教!

問題解答

回答1:

又到了自問自答的環節....如果說實現我上面說的那種方式,還要實現LazyLoad,IDEA自動生成基本上是沒戲的....那個生成的功能是不包括建立非對象之間的關系的,如果需要建立,只能自己去改映射文件.先把那個tab表的實體類生成出來,然后在tab的實體類中添加一個Map類型的對象(具體映射的類型看另一個表的字段數據類型),生成對應的geter和seter函數.然后就是map文件:

<map name='values' table='tabmeta'> <key column='tid' foreign-key='id'/><!--虛擬外鍵:誰和誰相等代表關系--> <index column='meta_key' type='string'/><!--Map的Key是誰--> <element column='meta_value' type='double'/><!--Map的Value是誰--></map>

標簽: java
相關文章:
主站蜘蛛池模板: 色播亚洲 | 在线播放精品 | 亚洲毛片免费在线观看 | 国产夫妇精品自在线 | 女人国产香蕉久久精品 | 男人天堂网在线视频 | 欧美freesex10一13黑人 | 久久精品.com| 成年片美女福利视频在线 | 日本特爽特黄特刺激大片 | 日韩精品一区二区三区四区 | 一级特黄色毛片免费看 | 美女被免费网站在线软件 | 乱人伦中文字幕视频 | 成年人在线观看网站 | 秋霞手机入口二日韩区 | 日韩精品一区二区三区中文在线 | 亚洲 欧美 视频 | 国产日韩精品欧美一区视频 | 成人禁在线观看午夜亚洲 | 日韩午夜片 | 国产成人深夜福利在线观看 | 久香草视频在线观看 | 国产午夜精品免费一二区 | 国产孕妇做受视频在线观看 | 色黄网站aaaaaa级毛片 | 日韩一区二区在线播放 | 日韩在线中文 | 亚洲成人综合视频 | 国产欧美一区二区另类精品 | 一级爱 | 成人国产三级在线播放 | 国产色司机在线视频免费观看 | 久久久久亚洲日日精品 | 性8sex亚洲区入口 | 老司机深夜影院入口aaaa | 亚洲综合久久久久久888 | 国产精品1页 | 精品国产香蕉在线播出 | 亚洲精品国精品久久99热 | 高清在线亚洲精品国产二区 |