使用Java方法配置Spring代碼解析
使用Java的方式配置Spring
我們現(xiàn)在要完全不使用Spring的xml配置,全權(quán)使用Java來配置Spring!
JavaConfig是Spring的一個(gè)子項(xiàng)目,在Spring4之后,他成為了一個(gè)核心功能。
實(shí)體類:
public class User { private String name; public String getName() { return name; } @Value("huba") //屬性注入值 public void setName(String name) { this.name = name; } }
配置類:
package com.kuang.config; import com.kuang.pojo.User; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; @Configuration //這個(gè)也會spring容器托管,注冊到容器中,因?yàn)樗緛砭褪且粋€(gè)@Component //@Configuration:代表這個(gè)一個(gè)配置類,就等同于beans.xml @ComponentScan("com.kuang.pojo") @Import(MyConfig2.class) public class MyConfig { //注冊一個(gè)bean,就相當(dāng)于我們之前寫的<bean>標(biāo)簽 //方法名就相當(dāng)于bean標(biāo)簽中的id //方法的返回值就相當(dāng)于bean標(biāo)簽中的class屬性 @Bean public User user(){ return new User();//就是返回要注入bean的對象 } }
測試類:
import com.kuang.config.MyConfig; import com.kuang.pojo.User; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class myTest { @Test public void test(){ //如果完全使用配置類方式,只能通過AnnotationConfigApplicationContext獲取容器,通過配置類的class對象加載! ApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class); User user = context.getBean("user", User.class); System.out.println(user.getName()); } }
這種純Java的配置方式,在SpringBoot中隨處可見!
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
OpenCV Java實(shí)現(xiàn)人臉識別和裁剪功能
這篇文章主要為大家詳細(xì)介紹了OpenCV Java實(shí)現(xiàn)人臉識別和裁剪功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05Java數(shù)組的特性_動力節(jié)點(diǎn)Java學(xué)院整理
數(shù)組是基本上所有語言都會有的一種數(shù)據(jù)類型,它表示一組相同類型的數(shù)據(jù)的集合,具有固定的長度,并且在內(nèi)存中占據(jù)連續(xù)的空間。在C,C++等語言中,數(shù)組的定義簡潔清晰,而在Java中確有一些會讓人迷惑的特性。本文就嘗試分析這些特性2017-04-04Java之mybatis使用limit實(shí)現(xiàn)分頁案例講解
這篇文章主要介紹了Java之mybatis使用limit實(shí)現(xiàn)分頁案例講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08淺談java調(diào)用Restful API接口的方式
這篇文章主要介紹了淺談java調(diào)用Restful API接口的方式,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12Java(基于Struts2) 分頁實(shí)現(xiàn)代碼
這篇文章介紹了Java(基于Struts2) 分頁實(shí)現(xiàn)代碼,有需要的朋友可以參考一下2013-10-10SpringBoot3整合mybatis-plus的實(shí)現(xiàn)
MyBatis-Plus是一個(gè)MyBatis的增強(qiáng)工具,在MyBatis的基礎(chǔ)上只做增強(qiáng)不做改變,本文主要介紹了Mybatis-Plus3.x的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10