国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java開發(fā)流程 寫JAVA后端代碼時(shí)邏輯混亂怎么辦?

寫JAVA后端代碼時(shí)邏輯混亂怎么辦?后端代碼的復(fù)雜性是通過(guò)除法和規(guī)則來(lái)解決的。首先,通過(guò)拆分項(xiàng)目,項(xiàng)目之間可以存在依賴關(guān)系,但必須是單向依賴而不是環(huán)依賴。如果存在環(huán),我們必須考慮將環(huán)依賴分解為單獨(dú)的項(xiàng)

寫JAVA后端代碼時(shí)邏輯混亂怎么辦?

后端代碼的復(fù)雜性是通過(guò)除法和規(guī)則來(lái)解決的。首先,通過(guò)拆分項(xiàng)目,項(xiàng)目之間可以存在依賴關(guān)系,但必須是單向依賴而不是環(huán)依賴。如果存在環(huán),我們必須考慮將環(huán)依賴分解為單獨(dú)的項(xiàng)目來(lái)解決環(huán)依賴。

對(duì)于項(xiàng)目中的代碼,可以通過(guò)水平拆分和垂直拆分來(lái)降低復(fù)雜性。水平層分為控制器、服務(wù)、Dao和sqlmap,垂直層分為系統(tǒng)、biz1、biz2、Bizn,但在數(shù)據(jù)通暢連接中,水平拆分和垂直拆分相結(jié)合,如下圖所示:

通過(guò)這種分層方式,代碼層是分開的,結(jié)構(gòu)清晰。對(duì)于一些跨模塊調(diào)用的接口,如同一個(gè)數(shù)據(jù)表需要在不同的模塊中操作時(shí),可以將該接口作為公共接口升級(jí)到上層cxmodule,對(duì)于一些可重用的、相對(duì)獨(dú)立的功能,可以在cxmodule中定義一個(gè)干凈的接口,業(yè)務(wù)邏輯可以通過(guò)在模塊的功能模塊中實(shí)現(xiàn)接口來(lái)實(shí)現(xiàn),而不需要使用spring的事務(wù)管理機(jī)制,從而降低代碼的復(fù)雜度。

java異常從業(yè)務(wù)層集中拋出,是不是每個(gè)控制層方法都要trycatch?

控制層中有兩種異常:一種是預(yù)期的,另一種是可預(yù)測(cè)的。這種異常需要捕獲并“嘗試修復(fù)”。例如,在查詢用戶信息RPC的過(guò)程中,存在異常,包括500ah和404ah。對(duì)于客戶端,基本上不需要重試,這可以通過(guò)一個(gè)明確的錯(cuò)誤代碼來(lái)通知。相反,在超時(shí)的情況下,可以通知客戶端稍后再試,不同的錯(cuò)誤代碼可以引導(dǎo)客戶端進(jìn)行不同的操作。另一種情況是控制層本身不考慮。在這種情況下,盲目的嘗試/捕捉?jīng)]有多大意義。它通常在框架級(jí)進(jìn)行統(tǒng)一處理,包括記錄異常信息和優(yōu)雅的返回失敗。

最后,對(duì)于try/catch的使用,我們并不意味著我們看不到異常,但我們更多地考慮捕獲后我可以做什么,以及我是否可以嘗試解決此問(wèn)題。如果沒有,我們可以把它扔到上層,記錄并報(bào)警。如果我們不把這個(gè)問(wèn)題想清楚,就很容易形成一個(gè)禁忌(吞下例外)。

Java如何讓代碼出錯(cuò)了仍然往下運(yùn)行-異常的使用?

如果代碼錯(cuò)誤,可以編譯嗎?它還在工作嗎?

我對(duì)這個(gè)問(wèn)題的理解是:在程序運(yùn)行過(guò)程中出現(xiàn)異常,如何繼續(xù)讓系統(tǒng)正常運(yùn)行?

對(duì)于可能有異常的代碼,我們應(yīng)該用try語(yǔ)句包圍這些代碼,將出錯(cuò)后需要執(zhí)行的代碼放入catch{}語(yǔ)句,并將需要執(zhí)行的代碼放入finally{}語(yǔ)句,而不管是否生成異常。

如果在程序運(yùn)行期間在try中生成異常,而在catch中未處理,則程序?qū)⑼V?,finally中的代碼將不會(huì)執(zhí)行。

提問(wèn)者可以仔細(xì)閱讀Java異常處理一章,然后結(jié)合幾個(gè)例子來(lái)理解它。

如果這是不對(duì)的,請(qǐng)指出,在做了大約三年的程序員之后,我總是覺得我在拿東西,而不是在創(chuàng)造東西。努力提高自己。