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

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - 阿里的開(kāi)發(fā)手冊(cè)中為什么禁用map來(lái)作為查詢(xún)的接受類(lèi)?

瀏覽:101日期:2023-11-17 11:16:44

問(wèn)題描述

我在項(xiàng)目中經(jīng)常使用List<Map<String,Object>>做為查詢(xún)的接受對(duì)象.感覺(jué)使用方便,不用每個(gè)多表查詢(xún)的時(shí)候都創(chuàng)建DTO類(lèi).java - 阿里的開(kāi)發(fā)手冊(cè)中為什么禁用map來(lái)作為查詢(xún)的接受類(lèi)?

上面只針對(duì)查詢(xún),如果將map應(yīng)用到DTO,VO是否會(huì)有相同的問(wèn)題.

問(wèn)題解答

回答1:

1、map參數(shù)數(shù)量大時(shí)不易維護(hù)。要通過(guò)識(shí)別字符串形式的key,可能哪個(gè)字母沒(méi)加程序就出錯(cuò)了

2、map轉(zhuǎn)成實(shí)體,耗費(fèi)資源。或者不轉(zhuǎn)實(shí)體,直接將map傳到sql層,但要判斷空值(傳沒(méi)傳這個(gè)參數(shù)啊。。。),參數(shù)數(shù)量一多要加一堆判斷(sql效率下降,也不易維護(hù))

3、創(chuàng)建map再put進(jìn)參數(shù)值,比創(chuàng)建一個(gè)實(shí)體類(lèi)的時(shí)間要長(zhǎng)(map數(shù)量少時(shí)創(chuàng)建的時(shí)間差距很小,但是數(shù)量較大時(shí)差距會(huì)非常大)

4、參數(shù)類(lèi)型的控制。sql中不是字符串類(lèi)型的參數(shù)還要轉(zhuǎn)成數(shù)值。。。錯(cuò)誤跑到sql中,容易被CC

5、面相對(duì)象,將sql層與實(shí)體分離,降低耦合。否則維護(hù)很麻煩

回答2:

我認(rèn)為有兩個(gè)方面吧:1.面向?qū)ο蟮乃枷?.效率吧,畢竟玩查詢(xún)的【這里的效率是指map.get(key)】,map.put然后get的 這樣很容易出錯(cuò)吧, 的確不怎么好

都是我瞎編的,呵呵,大學(xué)老師好像講過(guò)吧。。

回答3:

不利于他人共同開(kāi)發(fā)和后期維護(hù)

回答4:

Map<String, Object> 類(lèi)型不安全

回答5:

Map用查詢(xún)參數(shù),方法調(diào)用者根本就不知道方法提供者提供方法參數(shù)可以存哪些健值對(duì)以及健值對(duì)類(lèi)型,map.put(key,value)亂傳的問(wèn)題不能在編譯階段發(fā)現(xiàn),用QueryDto可以精確定義參數(shù)類(lèi)型和限制(JSR 303 Validation)

回答6:

如果我沒(méi)有理解錯(cuò)誤的話(huà).

數(shù)據(jù)查詢(xún)對(duì)象是指 dao 查詢(xún)方法的參數(shù)封裝, 并不是指方法的返回. 這樣做的好處是代碼的可讀性高, 你直接使用map作為接口參數(shù), 使用者想要確定具體的查詢(xún)條件非常困難, 而且給外部接口調(diào)用的靈活性太高, 比如 使用者在map中增加一個(gè)x, 但是你的查詢(xún)根本不支持, 但是你如何讓使用者能夠確認(rèn)的知道呢?

而 dao 的返回參數(shù)按照文檔的要求是應(yīng)該使用 do/dto.

回答7:

感覺(jué)主要是調(diào)試和維護(hù)困難,比如任何key的拼寫(xiě)錯(cuò)誤,要到query執(zhí)行時(shí)才能反饋

回答8:

map的優(yōu)點(diǎn):

1、靈活性強(qiáng)于javabean,易擴(kuò)展,耦合度低。2、寫(xiě)起來(lái)簡(jiǎn)單,代碼量少。

看一看Javabean的優(yōu)點(diǎn):

1、面向?qū)ο蟮牧己迷忈尅?、數(shù)據(jù)結(jié)構(gòu)清晰,便于團(tuán)隊(duì)開(kāi)發(fā) & 后期維護(hù)。3、代碼足夠健壯,可以排除掉編譯期錯(cuò)誤。

權(quán)衡利弊,如果團(tuán)隊(duì)開(kāi)發(fā)還是javabean比較好,個(gè)人項(xiàng)目就無(wú)所謂了。歡迎補(bǔ)充!~

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 国产成人精品一区二区三区 | 亚洲在线视频免费观看 | 国产一区二三区 | 女人抠逼视频 | 国产精品久久久久久久久久日本 | 亚洲欧美视频一区 | 草草影院欧美三级日本 | 王朝影院一区二区三区入口 | 国产精自产拍久久久久久 | 免费区一级欧美毛片 | 亚洲日韩精品欧美一区二区一 | 亚洲精品一区二三区在线观看 | 欧美日韩中文字幕在线观看 | 久久成人a毛片免费观看网站 | 99热国产免费 | 成人免费看黄网址 | 日韩欧美在线精品 | 99精品在线看| 免费黄色一级网站 | 国产激情久久久久影 | 美美女下面被cao爽 美女131爽爽爽做爰中文视频 | 美女喷水网站 | 国产专区一va亚洲v天堂 | 巨乳毛片 | gogo999亚洲肉体艺术大胆 | 欧美成人精品动漫在线专区 | 成年人免费观看网站 | 久久久久久久国产精品 | 午夜两性视频 | 美女被男人桶到嗷嗷叫爽网站 | 久青草国产97香蕉在线视频xx | 精品久久成人 | 成年人三级视频 | b毛片| 免费国产高清视频 | www.91亚洲| 欧美国产伦久久久久 | 一区二区三区免费视频 www | 国产v在线播放 | 亚洲国产成a人v在线观看 | 国产精品女上位在线观看 |