最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring的@Bean和@Autowired組合使用詳解

 更新時間:2024年01月09日 09:50:07   作者:vegetari  
這篇文章主要介紹了Spring的@Bean和@Autowired組合使用詳解,Spring的@Bean注解用于告訴方法,產(chǎn)生一個Bean對象,然后這個Bean對象交給Spring管理,產(chǎn)生這個Bean對象的方法Spring只會調(diào)用一次隨后會將這個Bean對象放在自己的IOC容器,需要的朋友可以參考下

@Bean 基礎(chǔ)概念

  • @Bean:Spring的@Bean注解用于告訴方法,產(chǎn)生一個Bean對象,然后這個Bean對象交給Spring管理。產(chǎn)生這個Bean對象的方法Spring只會調(diào)用一次,隨后這個Spring將會將這個Bean對象放在自己的IOC容器中;
  • SpringIOC 容器管理一個或者多個bean,這些bean都需要在@Configuration注解下進(jìn)行創(chuàng)建,在一個方法上使用@Bean注解就表明這個方法需要交給Spring進(jìn)行管理;
  • @Bean是一個方法級別上的注解,主要用在@Configuration注解的類里,也可以用在@Component注解的類里。添加的bean的id為方法名;
  • 使用Bean時,即是把已經(jīng)在xml文件中配置好的Bean拿來用,完成屬性、方法的組裝;比如@Autowired , @Resource,可以通過byTYPE(@Autowired)、byNAME(@Resource)的方式獲取Bean;
  • 注冊Bean時,@Component , @Repository , @ Controller , @Service , @Configration這些注解都是把你要實例化的對象轉(zhuǎn)化成一個Bean,放在IoC容器中,等你要用的時候,它會和上面的@Autowired , @Resource配合到一起,把對象、屬性、方法完美組裝;

@Autowired 基礎(chǔ)概念

@Autowired 可以將spring ioc 中的bean(例如@Bean 注解創(chuàng)建的bean)的實例獲取。

舉個例子

一,使用@Bean 在某個方法上,產(chǎn)生一個bean 對象

@Configuration
public class TokenConfig {
    /**
     * @Bean 注解是告訴該方法產(chǎn)生一個bean 對象,然后將該對象交給spring管理,產(chǎn)生這個bean 對象的方法spring 只會調(diào)用一次。隨后spring會將這個bean對象放在自己的ioc容器中。
     */
    @Bean
    public TokenStore tokenStore() {
        //JWT令牌存儲方案
        return new JwtTokenStore();
    }
}

二,使用@Autowired注解,將在spring 中的bean 對象獲取到TokenStore

@Configuration
@EnableAuthorizationServer
public class AuthorizationServer extends AuthorizationServerConfigurerAdapter {
   
 @Autowired
 private TokenStore tokenStore;
 
 public AuthorizationServerTokenServices tokenService() {
        DefaultTokenServices service=new DefaultTokenServices();
        //客戶端詳情服務(wù)
        service.setClientDetailsService(clientDetailsService);
        //支持刷新令牌
        service.setSupportRefreshToken(true);
        //令牌存儲策略
        service.setTokenStore(tokenStore);//這一行的tokenStore
        //令牌增強
        TokenEnhancerChain tokenEnhancerChain = new TokenEnhancerChain();
        tokenEnhancerChain.setTokenEnhancers(Arrays.asList(accessTokenConverter));
        service.setTokenEnhancer(tokenEnhancerChain);
 
        // 令牌默認(rèn)有效期2小時
        service.setAccessTokenValiditySeconds(7200);
        // 刷新令牌默認(rèn)有效期3天
        service.setRefreshTokenValiditySeconds(259200);
        return service;
    }
}

service.setTokenStore(tokenStore);//這一行的tokenStore的意思和

service.setTokenStore(new JwtTokenStore); 是一樣的。

使用 @Autowired 引入TokenStore 類就可以獲取我們使用@Bean對該對象設(shè)置的實例了。

注意,不用管TokenStore 是 interface還是class.都可以被@Bean 調(diào)用

到此這篇關(guān)于Spring的@Bean和@Autowired組合使用詳解的文章就介紹到這了,更多相關(guān)@Bean和@Autowired組合使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java簡單實現(xiàn)八叉樹圖像處理代碼示例

    java簡單實現(xiàn)八叉樹圖像處理代碼示例

    這篇文章主要介紹了java簡單實現(xiàn)八叉樹圖像處理代碼示例,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • 一文詳解JDK21中虛擬線程

    一文詳解JDK21中虛擬線程

    虛擬線程是JDK19中引入的,JDK21正式發(fā)布,本文主要介紹了JDK21中虛擬線程,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • Idea插件MybatisX失效的問題解決

    Idea插件MybatisX失效的問題解決

    這篇文章主要介紹了Idea插件MybatisX失效的問題解決,詳細(xì)的介紹了4種問題的解決方法,具有一定的參考價值,感興趣的可以了解一下
    2025-05-05
  • java中的4種循環(huán)方法示例詳情

    java中的4種循環(huán)方法示例詳情

    大家好,本篇文章主要講的是java中的4種循環(huán)方法示例詳情,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • JAVA十大排序算法之堆排序詳解

    JAVA十大排序算法之堆排序詳解

    這篇文章主要介紹了java中的冒泡排序,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考
    2021-08-08
  • Spring的事務(wù)管理之聲明式事務(wù)詳解

    Spring的事務(wù)管理之聲明式事務(wù)詳解

    本文介紹了Spring中的事務(wù)管理,包括聲明式事務(wù)管理和和編程式事務(wù)管理,重點講解了聲明式事務(wù)管理和Spring AOP的關(guān)系,及Spring事務(wù)攔截器TransactionInterceptor的調(diào)用的,最后還釋了Spring事務(wù)的創(chuàng)建和使用的具體過程,以及解決了一些事務(wù)相關(guān)問題
    2026-05-05
  • Java設(shè)計模式之策略模式_動力節(jié)點Java學(xué)院整理

    Java設(shè)計模式之策略模式_動力節(jié)點Java學(xué)院整理

    策略模式是對算法的封裝,把一系列的算法分別封裝到對應(yīng)的類中,并且這些類實現(xiàn)相同的接口,相互之間可以替換。接下來通過本文給大家分享Java設(shè)計模式之策略模式,感興趣的朋友一起看看吧
    2017-08-08
  • SpringCloud Netflix Ribbon超詳細(xì)講解

    SpringCloud Netflix Ribbon超詳細(xì)講解

    這篇文章主要介紹了SpringCloud筆記HoxtonNetflix之Ribbon負(fù)載均衡,Ribbon是管理HTTP和TCP服務(wù)客戶端的負(fù)載均衡器,Ribbon具有一系列帶有名稱的客戶端(Named Client),對SpringCloud Ribbon負(fù)載均衡相關(guān)知識感興趣的朋友一起看看吧
    2022-10-10
  • java實現(xiàn)往hive 的map類型字段寫數(shù)據(jù)

    java實現(xiàn)往hive 的map類型字段寫數(shù)據(jù)

    這篇文章主要介紹了java實現(xiàn)往hive 的map類型字段寫數(shù)據(jù)操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • java通過url下載文件并輸出的方法

    java通過url下載文件并輸出的方法

    下面小編就為大家分享一篇java通過url下載文件并輸出的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01

最新評論

沽源县| 平山县| 黄冈市| 汝南县| 小金县| 绥宁县| 广昌县| 鄄城县| 白河县| 精河县| 卫辉市| 华蓥市| 伊川县| 广灵县| 盘山县| 霍林郭勒市| 本溪市| 西乡县| 德惠市| 贡嘎县| 溧阳市| 绵阳市| 武威市| 沧州市| 醴陵市| 徐水县| 达孜县| 城市| 涟源市| 武隆县| 兴山县| 华坪县| 延川县| 那曲县| 凤山市| 兰溪市| 五常市| 吉安县| 莲花县| 辽中县| 新泰市|