java 無法注入service_SpringBoot集成shiro,MyRealm中無法@Autowired注入Service的問題

網上說了很多諸如是Spring加載順序,shiroFilter在Spring自動裝配bean之前的問題,其實也有可能忽略如下低級錯誤。

在ShiroConfiguration中要使用@Bean在ApplicationContext注入MyRealm,不能直接new對象。

道理和Controller中調用Service一樣,都要是SpringBean,不能自己new。

錯誤方式:

@Bean(name = "securityManager")

public SecurityManager securityManager() {

DefaultWebSecurityManager manager = new DefaultWebSecurityManager();

MyRealm myRealm = new MyRealm();

manager.setRealm(myRealm);

return manager;

}

正確方式:

@Bean(name = "myRealm")

public MyRealm myAuthRealm() {

MyRealm myRealm = new MyRealm();

return myRealm;

}

@Bean(name = "securityManager")

public SecurityManager securityManager(@Qualifier("myRealm")MyRealm myRealm) {

DefaultWebSecurityManager manager = new DefaultWebSecurityManager();

manager.setRealm(myRealm);

return manager;

}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/272761.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/272761.shtml
英文地址,請注明出處:http://en.pswp.cn/news/272761.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python之函數用法startswith()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函數用法startswith() #http://www.runoob.com/python/att-string-startswith.html#startswith() #說明:返回布爾值,用于檢查字符串是否是以指定子字符串開頭,如果是則返回 True,否則…

別去取悅,心里沒你的人

鞋子不合適不必硬塞,否則磨了自己的腳;不必討好心里沒你的人,不在乎你的人,你付出再多,也打動不了他。討好心里沒你的人,會讓自己很累很累;總是遷就他,總是圍著他轉,最后…

tensorflow java 加速_Tensorflow使用GPU加速

測試faster-rcnn時,cpu計算速度較慢,調整代碼改為gpu加速運算將 with tf.Session() as sess: 替換為1 gpu_options tf.GPUOptions(per_process_gpu_memory_fraction0.9)2 with tf.Session(configtf.ConfigProto(gpu_optionsgpu_options,log_device_plac…

Install OpenStack Kilo Dashboard wiht Nginx + uWSGI On RHEL7.1

一、安裝Horizon、Nginx、uWSGI yum install -y uwsgi-plugin-python openstack-dashboard uwsgi nginx 二、配置uWSGI cat >/etc/uwsgi.ini <<EOF [uwsgi] plugins python master true processes 10 threads 2 chmod-socket 666socket 127.0.0.1:9000 pidfile …

C#枚舉類型的筆記

一、枚舉類型的概念枚舉類型聲明為一組相關的符號常數定義了一個類型名稱。枚舉用于"多項選擇"場合&#xff0c;就是程序運行時從編譯時已經設定的固定數目的“選擇”中做出決定。枚舉類型&#xff08;也稱為枚舉&#xff09;為定義一組可以賦給變量的命名整數常量提…

java動態打印_JFreeChart學習(三)——動態打印java內存使用情況

JFreeChart動態打印java內存使用情況import java.awt.BasicStroke;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt…

WPF中StringToImage和BoolToImage簡單用法

在WPF的綁定控件操作中&#xff0c;經常會通過bool值或者某些特定的string值做出相應動作。但UI層控件的很多屬性對應的都不是Bool值或者對應的只是固定的String值。 這個時候有兩方法解決該問題。 1.是在后臺cs中做出比較判斷&#xff0c;然后根據相應結果傳達UI層做出相應動作…

【必備】jQuery性能優化的38個建議

一、注意定義jQuery變量的時候添加var關鍵字這個不僅僅是jQuery&#xff0c;所有javascript開發過程中&#xff0c;都需要注意&#xff0c;請一定不要定義成如下&#xff1a;$loading $(#loading); //這個是全局定義&#xff0c;不知道哪里位置倒霉引用了相同的變量名&#xf…

java中策略設計模式_Java中的設計模式(五):策略模式

策略設計模式是行為設計模式之一。當我們為特定任務使用多個算法時&#xff0c;使用策略模式&#xff0c;客戶端決定在運行時使用的實際實現。策略模式的最佳示例之一是Collections.sort()采用Comparator參數的方法。基于Comparator接口的不同實現&#xff0c;對象將以不同的方…

isset函數

isset (PHP 4, PHP 5) isset — 檢測變量是否設置 檢測變量是否設置&#xff0c;并且不是 NULL。 如果 var 存在并且值不是 NULL 則返回 TRUE&#xff0c;否則返回 FALSE。 $a "test"; $b "anothertest";var_dump(isset($a)); // TRUE var_dump(i…

SQLl中的left join、right join、inner join詳解

left join(左聯接) 返回包括左表中的所有記錄和右表中聯結字段相等的記錄right join(右聯接) 返回包括右表中的所有記錄和左表中聯結字段相等的記錄inner join(等值連接) 只返回兩個表中聯結字段相等的行舉例如下&#xff1a;--------------------------------------------表A記…

afudos備份bios不動_bios刷壞后的兩種解決方法

通常主板新的BIOS可以修正舊版中BIOS的一些BUG&#xff0c;糾正對某些硬件和軟件的兼容問題&#xff0c;添加新硬件的支持等等&#xff0c;所以有時我們需要刷新BIOS。但刷新主板BIOS實際上是存在一定風險的&#xff0c;雖然現在各主板廠商都推出了在Windows下刷新BIOS的軟件&a…

光學基礎知識:白光、顏色混合、RGB、色彩空間

1665年&#xff0c;牛頓(Isaac Newton)進行了太陽光實驗&#xff0c;讓太陽光通過窗板的小圓孔照射在玻璃三角棱鏡上&#xff0c;光束在棱鏡中折射后&#xff0c;擴散為一個連續的彩虹顏色帶&#xff0c;牛頓稱之為光譜&#xff0c;表示連續的可見光譜。而可見光譜只是所有電磁…

SQL Server各個版本功能比較

微軟的SQlserver主要經歷了從sql server 2000 到最新的sql server 2017&#xff0c;現把各個版本的更新特性介紹如下&#xff1a;SQL SERVER 2000日志傳送索引視圖SQL SERVER 2005數據庫鏡像&#xff08;只有 SQL Server 2005 Enterprise Edition SP1 和更高版本支持異步數據庫…

java hibernate的使用_《Hibernate快速開始 – 4 – 使用JAVA持久層 API (JPA)教程》

章節目標使用JPA EntityManagerFactory使用注解提供映射信息使用 JPA 接口本教程可在 entitymanger/ 路徑下下載4.1. persistence.xml之前的章節使用了hibernate原生的配置文件hibernate.cfg.xml。然而&#xff0c;JPA中定義了不同的的自助配置文件persistence.xml。這個啟動過…

HTTP消息中Header頭部信息整理

1、HTTP請求方式GET向Web服務器請求一個文件POST向Web服務器發送數據讓Web服務器進行處理PUT向Web服務器發送數據并存儲在Web服務器內部HEAD檢查一個對象是否存在DELETE從Web服務器上刪除一個文件CONNECT對通道提供支持TRACE跟蹤到服務器的路徑OPTIONS查詢Web服務器的性能說明&…

gdb命令中attach使用

[測試程序] 我們先看看我們的測試程序: /* in eg1.c */ int wib(int no1, int no2) { int result, diff; diff no1 - no2; result no1 / diff; return result; } int main() { pid_t pid; pid fork(); if (pid &…

java%4d_java積累

數組的使用package javaDemo;import java.util.*;/**** author Administrator* version 1.0***/public class test {public static void main(String[] args){String[] greeting new String[3];greeting[0] "Welcome to Core Java";greeting[1] "by Cay Hors…

查詢CPU占用高的SQL語句的解決方案

觸發器造成死鎖、作業多且頻繁、中間表的大量使用、游標的大量使用、索引的設計不合理、事務操作頻繁、SQL語句設計不合理&#xff0c;都會造成查詢效率低下、影響服務器性能的發揮。我們可以使用sql server自帶的性能分析追蹤工具sql profiler分析數據庫設計所產生問題的來源&…

父類與子類之間的關系

1) 運行課件中的例題ParentChildTest.java&#xff0c;回答下列問題&#xff1a; a) 左邊的程序運行結果是什么&#xff1f; b) 你如何解釋會得到這樣的輸出&#xff1f; 第一個創建一個Parent對象&#xff0c;調用的是父類構造方法 第二個創建一個Child對象&#xff0c;調用的…