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

當(dāng)mybatis返回值遇見內(nèi)部類的問(wèn)題

 更新時(shí)間:2023年12月01日 16:06:01   作者:三省同學(xué)  
這篇文章主要介紹了當(dāng)mybatis返回值遇見內(nèi)部類的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

背景

使用mybatis返回內(nèi)部類時(shí),無(wú)法點(diǎn)擊過(guò)去,啟動(dòng)報(bào)錯(cuò)

Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.XXX.A$B'.  
Cause: java.lang.ClassNotFoundException: Cannot find class: com.XXX.A$B
    at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:120)
    at org.apache.ibatis.builder.BaseBuilder.resolveAlias(BaseBuilder.java:149)
    at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:116)
    ... 65 common frames omitted

解決方案

如果B類是A類中的內(nèi)部類:

映射寫法:resultType=" com.XXX.A$B">

A類和B類之間用 $表示內(nèi)外關(guān)系,不用的.。

同時(shí),內(nèi)部類需用內(nèi)static修飾:

@Data
public class A {

    Long value;
    String label;
    List<B> children;

    /**
     * 內(nèi)部類
     */
    @Data
    public static class B {
	    Long value;
		String label;
	    List<C> children;
    }
    
   	/**
     * 內(nèi)部類
     */
    @Data
    public static class C {
	    Long value;
		String label;
    }
}

為什么要用static

如果未加static,啟動(dòng)時(shí)不會(huì)報(bào)錯(cuò),但是請(qǐng)求方法時(shí)會(huì)報(bào)如下錯(cuò)誤:

Caused by: org.apache.ibatis.executor.ExecutorException: 
No constructor found in com.XXX.A$B matching
 [java.lang.Long, java.lang.String, java.lang.Long, java.lang.String, java.lang.Long, java.lang.String]

未匹配到構(gòu)造器

靜態(tài)內(nèi)部類和內(nèi)部類區(qū)別

Oracle官方的說(shuō)法:

Terminology: Nested classes are divided into two categories: static and non-static. Nested classes that are declared static are called static nested classes. Non-static nested classes are called inner classes.

從字面上看,一個(gè)被稱為靜態(tài)嵌套類,一個(gè)被稱為內(nèi)部類。 從字面的角度解釋是這樣的:

  • 什么是嵌套?嵌套就是我跟你沒(méi)關(guān)系,自己可以完全獨(dú)立存在。
  • 什么是內(nèi)部??jī)?nèi)部就是我是你的一部分,我了解你,我知道你的全部,沒(méi)有你就沒(méi)有我。(所以內(nèi)部類對(duì)象是以外部類對(duì)象存在為前提的)

至于具體的使用場(chǎng)景見官網(wǎng):

http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mybatis-plus中QueryWrapper的多種用法小結(jié)

    Mybatis-plus中QueryWrapper的多種用法小結(jié)

    本文主要介紹了Mybatis-plus中QueryWrapper的多種用法小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 使用Spring boot 的profile功能實(shí)現(xiàn)多環(huán)境配置自動(dòng)切換

    使用Spring boot 的profile功能實(shí)現(xiàn)多環(huán)境配置自動(dòng)切換

    這篇文章主要介紹了使用Spring boot 的profile功能實(shí)現(xiàn)多環(huán)境配置自動(dòng)切換的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2018-11-11
  • java yaml轉(zhuǎn)properties工具類方式

    java yaml轉(zhuǎn)properties工具類方式

    這篇文章主要介紹了java yaml轉(zhuǎn)properties工具類方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 在springboot中注入FilterRegistrationBean不生效的原因

    在springboot中注入FilterRegistrationBean不生效的原因

    這篇文章主要介紹了在springboot中注入FilterRegistrationBean不生效的原因及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java實(shí)現(xiàn)五子棋小游戲

    java實(shí)現(xiàn)五子棋小游戲

    這篇文章主要介紹了java實(shí)現(xiàn)五子棋小游戲的相關(guān)資料,十分簡(jiǎn)單實(shí)用,推薦給大家,需要的朋友可以參考下
    2015-03-03
  • 快速學(xué)會(huì)Dubbo的配置環(huán)境及相關(guān)配置

    快速學(xué)會(huì)Dubbo的配置環(huán)境及相關(guān)配置

    本文主要講解Dubbo的環(huán)境與配置,文中運(yùn)用大量代碼和圖片講解的非常詳細(xì),需要學(xué)習(xí)或用到相關(guān)知識(shí)的小伙伴可以參考這篇文章
    2021-09-09
  • PageHelper在springboot中的使用方式

    PageHelper在springboot中的使用方式

    這篇文章主要介紹了PageHelper在springboot中的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • java版微信公眾平臺(tái)消息接口應(yīng)用示例

    java版微信公眾平臺(tái)消息接口應(yīng)用示例

    這篇文章主要介紹了java版微信公眾平臺(tái)消息接口應(yīng)用,結(jié)合實(shí)例形式對(duì)比分析了PHP與java應(yīng)用微信公眾平臺(tái)接口的相關(guān)調(diào)用與操作技巧,需要的朋友可以參考下
    2017-07-07
  • spring mvc 組合mybatis框架實(shí)例詳解

    spring mvc 組合mybatis框架實(shí)例詳解

    本項(xiàng)目采用 maven 結(jié)構(gòu),主要演示了 spring mvc + mybatis,controller 獲取數(shù)據(jù)后以json 格式返回?cái)?shù)據(jù)。對(duì)spring mvc 組合mybatis的方法感興趣的朋友可以參考下本文
    2018-01-01
  • Java基礎(chǔ)題新手練習(xí)(一)

    Java基礎(chǔ)題新手練習(xí)(一)

    下面小編就為大家?guī)?lái)一篇Java基礎(chǔ)的幾道練習(xí)題(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧,希望可以幫到你
    2021-07-07

最新評(píng)論