@Bean
@Configuration
第三方的jar没法用其他的方法,只能用这种方法注入
目录:
1. TestConfig.java
package com.xinzhi.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * @author sr * @date 2021/1/24 */ @Configuration public class TestConfig { @Bean public Mouse mouse(){ return new Mouse("jerry"); } @Bean //自动把容器里有的bean,传到这里 public Cat cat(Mouse mouse){ return new Cat("tom",mouse); } }
自动把容器里有的bean,注入到相应的方法里面
2. Cat.java
package com.xinzhi.config; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; /** * @author sr * @date 2021/1/24 */ @Data @NoArgsConstructor @AllArgsConstructor public class Cat { private String name; private Mouse food; }
3. Mouse.java
package com.xinzhi.config; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; /** * @author sr * @date 2021/1/24 */ @Data @NoArgsConstructor @AllArgsConstructor public class Mouse { private String name; }
4. 测试
@Test public void testConfig(){ //加载配置文件 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("beans.xml"); Cat bean = applicationContext.getBean(Cat.class); System.out.println(bean); }
5. 结果
Cat(name=tom, food=Mouse(name=jerry))