亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

關(guān)于mybatis一對(duì)一查詢一對(duì)多查詢遇到的問(wèn)題

 更新時(shí)間:2022年05月30日 15:06:04   作者:roydon_Guo  
這篇文章主要介紹了關(guān)于mybatis一對(duì)一查詢,一對(duì)多查詢遇到的錯(cuò)誤,接下來(lái)是對(duì)文章進(jìn)行操作,要求查詢?nèi)课恼?,并關(guān)聯(lián)查詢作者,文章標(biāo)簽,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下

springboot整合mybatis項(xiàng)目
博客系統(tǒng)
文章,相冊(cè),評(píng)論,標(biāo)簽,等表
IDEA為最新版2021.3.3,mysql數(shù)據(jù)庫(kù)為最新版Navicat
(或許有些字段不支持特定的命名)

也是醉了,以前idea還是19版的,navicat也是老版本的時(shí)候mybatis關(guān)聯(lián)查詢mapper操作能正常運(yùn)行,拿到相應(yīng)字段,并封裝,但最近寫項(xiàng)目過(guò)程中遇到一個(gè)離譜的是,過(guò)了好久才發(fā)現(xiàn),

當(dāng)關(guān)聯(lián)查詢時(shí),無(wú)論一對(duì)一還是一對(duì)多
除了需要注意javaType和ofType之外,還應(yīng)該注意各表主鍵不能同一名稱

實(shí)體類文章

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Article implements Serializable {
    private Integer id;
    private Integer authorId;
    private String title;
    private String content;
    private Timestamp date;//private LocalDate date;
    private Users user;
    private List<Comment> commentList;
    private List<ArticleTag> articleTagList;
}

接下來(lái)是對(duì)文章進(jìn)行操作,要求查詢?nèi)课恼?,并關(guān)聯(lián)查詢作者,文章標(biāo)簽(一個(gè)文章多個(gè)標(biāo)簽)

先看一下我下面代碼塊的寫法,注意一對(duì)一,一對(duì)多的各個(gè)實(shí)體查詢時(shí)的id,都是拿的數(shù)據(jù)庫(kù)的id字段,只有標(biāo)簽被我改為了tag_id

<select id="queryAllArticles" resultMap="ArticleList">
        select a.*,u.*,t.*
        from article a
                 join users u on a.authorid = u.id
                 left outer join article_tag t on a.id = t.article_id
    </select>
    <resultMap id="ArticleList" type="article">
        <id column="id" property="id"/>
        <result column="authorid" property="authorId"/>
        <result column="title" property="title"/>
        <result column="content" property="content"/>
        <result column="date" property="date"/>
        <association property="user" javaType="users">
            <id column="id" property="id"/>
            <result column="pet_name" property="petName"/>
            <result column="headportrait" property="headPortrait"/>
        </association>
        <collection property="articleTagList" ofType="articleTag">
            <id column="tag_id" property="tagId"/>
            <result column="article_id" property="articleId"/>
            <result column="tag_content" property="tag"/>
        </collection>
    </resultMap>

如下圖
所以當(dāng)我測(cè)試的時(shí)候能正常根據(jù)id拿到每張表的同一主鍵名稱id嗎

并不能拿到
控制臺(tái)僅僅正確輸出了標(biāo)簽list中的tag_id,沒(méi)錯(cuò),細(xì)心點(diǎn),我也是最后才發(fā)現(xiàn),它nn的,上面輸出的user(文章作者)他的id封裝錯(cuò)了,他的id是這篇文章的id,所以,sql我自此所有表的主鍵不都全命名為id了,防止此處再烙下病根,而且數(shù)據(jù)庫(kù)字段在命名時(shí),我發(fā)現(xiàn)字段名字為describe和tag都查不到數(shù)據(jù),本來(lái)想簡(jiǎn)簡(jiǎn)單單命名的數(shù)據(jù)庫(kù)表,也得上心了拜拜了~~改bug去了????????????
///

看控制臺(tái)輸出/

我的用戶表里就沒(méi)有id為56的

user

article

到此這篇關(guān)于關(guān)于mybatis一對(duì)一查詢,一對(duì)多查詢遇到的錯(cuò)誤的文章就介紹到這了,更多相關(guān)mybatis一對(duì)一查詢一對(duì)多查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JAVA代碼實(shí)現(xiàn)MongoDB動(dòng)態(tài)條件之分頁(yè)查詢

    JAVA代碼實(shí)現(xiàn)MongoDB動(dòng)態(tài)條件之分頁(yè)查詢

    這篇文章主要介紹了JAVA如何實(shí)現(xiàn)MongoDB動(dòng)態(tài)條件之分頁(yè)查詢,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Java 二叉樹遍歷的常用方法

    Java 二叉樹遍歷的常用方法

    二叉樹的遍歷可以說(shuō)是解決二叉樹問(wèn)題的基礎(chǔ)。我們常用的遍歷方式無(wú)外乎就四種 前序遍歷、中序遍歷、后續(xù)遍歷、層次遍歷 這四種。
    2021-05-05
  • 一文了解Seata的實(shí)現(xiàn)原理

    一文了解Seata的實(shí)現(xiàn)原理

    隨著業(yè)務(wù)發(fā)展,單體系統(tǒng)逐漸無(wú)法滿足業(yè)務(wù)的需求,分布式架構(gòu)逐漸成為大型互聯(lián)網(wǎng)平臺(tái)首選。伴隨而來(lái)的問(wèn)題是,本地事務(wù)方案已經(jīng)無(wú)法滿足,分布式事務(wù)相關(guān)規(guī)范和框架應(yīng)運(yùn)而生。本文主要介紹Seata的實(shí)現(xiàn)原理
    2021-06-06
  • Spring Boot集成redis,key自定義生成方式

    Spring Boot集成redis,key自定義生成方式

    這篇文章主要介紹了Spring Boot集成redis,key自定義生成方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Java?Git?Commit?Message使用規(guī)范

    Java?Git?Commit?Message使用規(guī)范

    這篇文章主要介紹了Java?Git?Commit?Message使用規(guī)范,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-08-08
  • mybatis引用其他文件中的sql片段的實(shí)現(xiàn)

    mybatis引用其他文件中的sql片段的實(shí)現(xiàn)

    Mybatis中也是支持引用其他Mapper文件中的SQL片段的,本文就來(lái)介紹一下如何使用,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • Java快速排序QuickSort(實(shí)例)

    Java快速排序QuickSort(實(shí)例)

    下面小編就為大家?guī)?lái)一篇Java快速排序QuickSort(實(shí)例)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • 為什么Java要把字符串設(shè)計(jì)成不可變的

    為什么Java要把字符串設(shè)計(jì)成不可變的

    為什么Java要把字符串設(shè)計(jì)成不可變的,這篇文章給出了Java字符串設(shè)計(jì)成不可變的原因,感興趣的小伙伴們可以參考一下
    2017-06-06
  • SpringBoot整合ES-Elasticsearch的實(shí)例

    SpringBoot整合ES-Elasticsearch的實(shí)例

    這篇文章主要介紹了SpringBoot整合ES-Elasticsearch的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • springboot項(xiàng)目突然啟動(dòng)緩慢的解決

    springboot項(xiàng)目突然啟動(dòng)緩慢的解決

    這篇文章主要介紹了springboot項(xiàng)目突然啟動(dòng)緩慢的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11

最新評(píng)論