欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

spring?controller層引用service報空指針異常nullpointExceptio問題

 更新時間:2022年02月28日 08:38:40   作者:lileLife  
這篇文章主要介紹了spring?controller層引用service報空指針異常nullpointExceptio問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

調用controller報空指針有兩種情況 

  • 1、 service 或者mapper 沒有加載到spring容器中 ,引用時候肯定報空指針
  • 2、 service加載到spring容器中了, 但是controller中定義的方法為private,私有方法被接口訪問時候,因為private作用域的問題,無法獲取該方法,報空指針

沒有加載到spring容器中

1、controller層中的service沒有注入,(@Resource @Autowired)

2、service層沒有使用@Service修飾  

3、Application啟動類中,沒有使用定義需要加載到容器中的包

該包中包含需要加載進去的各種bean ,使用@ComponentScan是指定需要加載的bean所在包,而@SpringbootApplication其實已經包含了該注解 

4、 常見報空指針的場景是,用戶自定義了Util下的類,然后使用@Service引用了定義的Service,但是報空指針。   這種是因為,該Util類,沒有加載到Spring容器中,需要使用@Component注解 ,同時,這個util類需要使用@Resource引用到Spring容器中,這樣該util類和service才會一同作用到Spring容器中。

 controller層使用@RestController注釋,在啟動時候會因為@componentScan的原因,加載進容器中,總結一點,要使用該bean,該bean需加載進Spring容器中。

Controller類下的方法private私有了

這種是引用java 修飾符作用域的問題,private修飾的方法只能在該類中使用。  

其實你使用Idea時候,在controller中定義private方法時候, 編輯器會顯示

Idea已經告訴你,這種的話沒有被引用,

而將方法public后:服務啟動后, 該處會顯示正常不會報灰色   

插一句:idea是真的牛皮的編輯器 

controller層引用service層報空指針問題

應用service層時

private Manager manager;

少加了@Autowired

添加后,空指針報錯解決

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 一文搞懂Java中的注解和反射

    一文搞懂Java中的注解和反射

    這篇文章主要給大家介紹了關于Java中注解和反射的原理及使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • Java的常見熱門ORM框架優(yōu)缺點區(qū)別

    Java的常見熱門ORM框架優(yōu)缺點區(qū)別

    Java?ORM框架是一種用于將Java對象映射到關系型數據庫中的工具,使得開發(fā)人員能夠通過對象操作數據庫而不必直接使用SQL查詢,Java開發(fā)變得更加高效和易于維護,選擇適合你的ORM框架是根據你的需求決定的,比如你的應用場景,數據結構和技術水平等
    2024-02-02
  • java中的通用權限管理設計(推薦)

    java中的通用權限管理設計(推薦)

    下面小編就為大家推薦一篇java中的通用權限管理設計,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • SpringBoot整合Redis實現緩存分頁數據查詢功能

    SpringBoot整合Redis實現緩存分頁數據查詢功能

    類似淘寶首頁,這些商品是從數據庫中查出來的嗎,答案肯定不是,本文我們就通過一個案例實操一下,首頁熱點數據怎么放到Redis中去查詢,感興趣的同學可以參考一下
    2023-06-06
  • Java 并行數據處理和性能分析

    Java 并行數據處理和性能分析

    這篇文章主要介紹了Java 并行數據處理和性能分析,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • MyBatis動態(tài)SQL標簽的用法詳解

    MyBatis動態(tài)SQL標簽的用法詳解

    這篇文章主要介紹了MyBatis動態(tài)SQL標簽的用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Linux系統下更換jdk版本詳細步驟

    Linux系統下更換jdk版本詳細步驟

    隨著Java語言的不斷更新,多個版本的JDK在現在的Linux環(huán)境中都存在,使得不同的開發(fā)人員可以按照自己的需求使用不同的JDK版本,這篇文章主要給大家介紹了關于Linux系統下更換jdk版本的詳細步驟,需要的朋友可以參考下
    2023-12-12
  • 通過實例講解springboot整合WebSocket

    通過實例講解springboot整合WebSocket

    這篇文章主要介紹了通過實例講解springboot整合WebSocket,WebSocket為游覽器和服務器提供了雙工異步通信的功能,即游覽器可以向服務器發(fā)送消息,服務器也可以向游覽器發(fā)送消息。,需要的朋友可以參考下
    2019-06-06
  • idea tomcat亂碼問題的解決及相關設置的步驟

    idea tomcat亂碼問題的解決及相關設置的步驟

    這篇文章主要介紹了idea tomcat亂碼問題的解決及相關設置的步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Idea中使用Git的流程

    Idea中使用Git的流程

    這篇文章主要介紹了Idea中使用Git的流程,git是目前流行的分布式版本管理系統。本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2020-09-09

最新評論