欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

怎樣使用MyBatis輕松實(shí)現(xiàn)遞歸查詢與存儲(chǔ)過程調(diào)用

怎樣使用MyBatis輕松實(shí)現(xiàn)遞歸查詢與存儲(chǔ)過程調(diào)用,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

成都創(chuàng)新互聯(lián)公司是一家業(yè)務(wù)范圍包括IDC托管業(yè)務(wù),網(wǎng)絡(luò)空間、主機(jī)租用、主機(jī)托管,四川、重慶、廣東電信服務(wù)器租用,南充服務(wù)器托管,成都網(wǎng)通服務(wù)器托管,成都服務(wù)器租用,業(yè)務(wù)范圍遍及中國(guó)大陸、港澳臺(tái)以及歐美等多個(gè)國(guó)家及地區(qū)的互聯(lián)網(wǎng)數(shù)據(jù)服務(wù)公司。

遞歸調(diào)用

由于部門的層級(jí)不可控,因此如果我想要獲取所有部門的完整json的話,就要采用遞歸調(diào)用,使用Java代碼處理遞歸有點(diǎn)low,剛好MyBatis的ResultMap中的collection可以很方便的解決這個(gè)問題,核心代碼如下:

<resultMap id="BaseResultMap" type="org.sang.bean.Department">
    <id property="id" column="id"/>
    <result column="name" property="name"/>
    <result column="parentId" property="parentId"/>
    <result column="isParent" property="isParent"/>
    <collection property="children" ofType="org.sang.bean.Department" select="org.sang.mapper.DepartmentMapper.getDepByPid" column="id">
    </collection>
</resultMap>
<select id="getDepByPid" resultMap="BaseResultMap">
    select d1.*from department d1 where d1.`parentId`=#{pid} AND d1.enabled=true;
</select>

每一個(gè)Department中都有一個(gè)children屬性,getDepByPid方法的返回結(jié)果是一個(gè)BaseResultMap,BaseResultMap中的collection又將調(diào)用getDepByPid方法,通過這種方式我們可以快速實(shí)現(xiàn)一個(gè)遞歸調(diào)用。Mapper中只需要定義如下方法即可:

List<Department> getDepByPid(Long pid);

查詢結(jié)果如下(部分):

[
    {
        "id": 1,
        "name": "股東會(huì)",
        "parentId": -1,
        "enabled": true,
        "children": [
            {
                "id": 4,
                "name": "董事長(zhǎng)",
                "parentId": 1,
                "enabled": true,
                "children": [
                    {
                        "id": 5,
                        "name": "總經(jīng)理",
                        "parentId": 4,
                        "enabled": true,
                        "children": [
                            {
                                "id": 8,
                                "name": "財(cái)務(wù)部",
                                "parentId": 5,
                                "enabled": true,
                                "children": [],
                                "parent": false
                            }],
                        "parent": true
                    }
                ],
                "parent": true
            }
        ],
        "parent": true
    }
]

存儲(chǔ)過程調(diào)用

存儲(chǔ)過程調(diào)用比較簡(jiǎn)單,以添加部門為例,如下:

1.Mapper中添加如下方法:

void addDep(@Param("dep") Department department);

2.xml中寫法如下:

<select id="addDep" statementType="CALLABLE">
    call addDep(#{dep.name,mode=IN,jdbcType=VARCHAR},#{dep.parentId,mode=IN,jdbcType=INTEGER},#{dep.enabled,mode=IN,jdbcType=BOOLEAN},#{dep.result,mode=OUT,jdbcType=INTEGER},#{dep.id,mode=OUT,jdbcType=BIGINT})
</select>

注意statementType調(diào)用表示這是一個(gè)存儲(chǔ)過程,mode=IN表示這是輸入?yún)?shù),mode=OUT表示這是輸出參數(shù),調(diào)用成功之后,在service中獲取department的id和result字段,就能拿到相應(yīng)的調(diào)用結(jié)果了。

看完上述內(nèi)容,你們掌握怎樣使用MyBatis輕松實(shí)現(xiàn)遞歸查詢與存儲(chǔ)過程調(diào)用的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章標(biāo)題:怎樣使用MyBatis輕松實(shí)現(xiàn)遞歸查詢與存儲(chǔ)過程調(diào)用
文章URL:http://aaarwkj.com/article16/peiggg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管網(wǎng)站改版、網(wǎng)頁(yè)設(shè)計(jì)公司、云服務(wù)器、做網(wǎng)站外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
日本一区二区三区在线观看视频| 国产亚洲精品精品国产亚洲| 国产一区国产二区中文字幕| 三级av电影中文字幕| 亚洲一区二区精品999| 国产经典午夜福利在线| 国产精品一级在线播放| 亚洲av少妇一区二区成年男人| 97视频精品免费观看| 中文字幕欧美人妻在线| 亚洲国产精品自拍第一页| 国产成人在线免费短视频| 亚乱熟女一区二区三区| 久久精品久久久精品| 国产在线麻豆在拍91精品| 欧美日韩三级性生活水平| 国产精品中文字幕日韩在线| 未满十八禁止在线观看av| 日本一区二区欧美亚洲国产| 五月婷婷丁香在线观看| 夫妻晚上同房太猛视频| 日韩人妻中文字幕亚洲| 欧美日韩国产av一区| 亚洲精品日韩在线欧美| 午夜福利精品在线观看| 久久99久久久久久精品| 亚洲 综合 久久久| 97视频精品全部免费观看| 国产免费看黄色的网站| 中文字幕乱码人妻一区二| 日韩在线一区二区三区电影 | 99热精品在线免费观看| 精品欧美黑人一区二区| 97热久久精品中文字幕一区| 欧美性生活在线视频观看| av在线日韩国产精品| 国产伦奸在线播放免费| 粉嫩av蜜臀一区二区三区| 关于男女性生活的视频| 亚洲精品有码在线观看| 亚洲欧美日韩另类精品一区二区三区 |