手動注入bean到spring容器

2022-01-29 12:27:31 字數 1439 閱讀 7898

// 獲取bean工廠並轉換為defaultlistablebeanfactory

this.defaultlistablebeanfactory = defaultlistablebeanfactory;

string beannamesfortype = defaultlistablebeanfactory.getbeannamesfortype(payclient.class);

system.out.println("beannamesfortype:" + arrays.tostring(beannamesfortype));

// defaultlistablebeanfactory.removebeandefinition("com.example.zuul.feign.payclient");

defaultlistablebeanfactory.removebeandefinition(beannamesfortype[0]);

// 通過beandefinitionbuilder建立bean定義

beandefinitionbuilder beandefinitionbuilder = beandefinitionbuilder.genericbeandefinition(payclient.class);

// 設定屬性userservice,此屬性引用已經定義的bean:userservice,這裡userservice已經被spring容器管理了.

// beandefinitionbuilder.addpropertyreference("payclient", "payclient");

// 註冊bean

defaultlistablebeanfactory.registerbeandefinition("com.example.zuul.feign.payclient", beandefinitionbuilder.getrawbeandefinition());

object bean = springcontextutils.getbean(payclient.class);

package com.example.zuul;

import org.springframework.stereotype.component;

/** */

@component

@suppresswarnings()

/***/

}/***/}

}}

/*** 獲取bean

** @param name bean的id

* @param * @return

*/public static t getbean(string name)

//通過型別獲取上下文中的bean

public static object getbean(class<?> requiredtype)

}

spring 註解注入bean

通過註解方式注入bean,需要在配置類下注入bean 第一步,配置掃瞄資料夾 首先要在spring.xml中配置需要掃瞄的配置類 base package com.kylin.config 第二步,新建註解配置類 configuration public class redisconfigurati...

Spring注入值到Bean的三種方式

在spring中,有三種方式注入值到 bean 屬性。正常的方式 快捷方式 p 模式 新建乙個user類,它包含username和password兩個屬www.cppcns.com性,現在使用spring的ioc注入值到該bean。package com.example.pojo public cl...

spring 依賴注入bean的屬性

對於類成員變數,spring支援建構函式注入,屬性setter方法注入 0.domain類 public class student public student string name,int age public string getname public void setname string...