總結(jié)一點(diǎn)經(jīng)驗(yàn)

1,查詢某條數(shù)據(jù)是否存在,如果查詢完的結(jié)果不需要再用到,可以在mapper中定義count方法,直接查詢出數(shù)量,具體寫(xiě)法:

mapper層:


int getCountByEqAssetId(String eqAssetId);

xml文件:


<select id="getCountByEqAssetId" parameterType="java.lang.String" resultType="java.lang.Integer">

    select count(*) from T_EQ_SPARE_REPLACE

where EQ_ASSET_ID = #{eqAssetId,jdbcType=VARCHAR}

</select>

這樣在shervice中需要查詢?cè)摋l數(shù)據(jù)是否存在時(shí)候:

 //設(shè)備備件更換數(shù)據(jù)庫(kù)重復(fù)校驗(yàn)
        int num = spareReplaceMapper.getCountByEqAssetId(assetDO.getId());
        if(num >0) {
            return ErrorCode.SpareReplaceRecodeExist;
        }

2,update和delete,對(duì)返回值int進(jìn)行判斷
對(duì)于數(shù)據(jù)庫(kù)的insert操作,如果失敗會(huì)返回相應(yīng)的錯(cuò)誤信息,但是update和delete時(shí),失敗了也不會(huì)有相應(yīng)的提示,所以我們最好對(duì)update和delete的返回值進(jìn)行判斷,如果返回的int值小于1,說(shuō)明update和delete并沒(méi)有正常執(zhí)行;
舉個(gè)栗子:

 public ErrorCode updateByCertificateNo(CertificateManagerDO certificateManagerDO){
        if(certificateManagerDOMapper.updateByCertificateNo(certificateManagerDO) == 0){
            return ErrorCode.AssetUpdateFailure;
        }
        return ErrorCode.Success;
    }

3,rollback的判定條件

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容