java - 關(guān)于 controller層與service層如何傳值?
問題描述
現(xiàn)在的架構(gòu)controller層與service層使用的map<string, string>傳值,感覺很多時(shí)候數(shù)值轉(zhuǎn)換很麻煩; 但是如果用bean對(duì)象傳值,需要建很多專門用來(lái)傳值的bean。。。。求架構(gòu)大神指點(diǎn)一下
問題解答
回答1:這就是一個(gè)細(xì)節(jié)代碼實(shí)現(xiàn)問題,還不到架構(gòu)。。
用map傳參顯然是有問題的,用封裝好的model傳值語(yǔ)義上更明確些,而且便于維護(hù),model多并不是啥問題
若覺得每次從map轉(zhuǎn)model很煩瑣的話,可以用BeanUtil工具或者自己寫個(gè)工具類做轉(zhuǎn)換
回答2:贊同樓上,model多可以用package做分層
盡量寫出便于維護(hù)的代碼,用map做返回參數(shù)對(duì)于以后維護(hù)是噩夢(mèng)
回答3:同意一樓,建議參數(shù)少的話,直接傳指定類型的變量,多的話,直接搞個(gè)dto,參數(shù)傳對(duì)象
回答4:建議使用bean傳值,安全可靠,便于維護(hù)。業(yè)務(wù)要求眾多bean的話,一定要分包分層管理bean,一個(gè)結(jié)構(gòu)清晰、層次分明的項(xiàng)目文件結(jié)構(gòu)有助于理清開發(fā)思路。
相關(guān)文章:
1. 管理員信息修改時(shí)的密碼問題2. angular.js - 輸入郵箱地址之后, 如何使其自動(dòng)在末尾添加分號(hào)?3. javascript - 后臺(tái)管理系統(tǒng)左側(cè)折疊導(dǎo)航欄數(shù)據(jù)較多,怎么樣直接通過搜索去定位到具體某一個(gè)菜單項(xiàng)位置,并展開當(dāng)前菜單4. javascript - html5的data屬性怎么指定一個(gè)function函數(shù)呢?5. 如何解決docker宿主機(jī)無(wú)法訪問容器中的服務(wù)?6. android - RxJava 中有根據(jù)條件執(zhí)行不同函數(shù)的操作符嗎?7. javascript - 如何使用nodejs 將.html 文件轉(zhuǎn)化成canvas8. mysql - 電商如何存儲(chǔ)營(yíng)業(yè)額數(shù)據(jù)9. html5 - 為什么使使用vue cli 腳手架,post-css 沒有自動(dòng)對(duì)css3屬性自動(dòng)添加瀏覽器前綴呢?10. java如何生成token?
