这里的注解应该不是很重要,大家看一下狂神咋说的吧
先创建一个USer类
package com.spring;
import org.springframework.stereotype.Component;
//将这个类标记为Spring的一个组件,放到容器中
@Component
public class User {
public String user ="用户";
}
再创建一个Config类
package com.spring;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
//这代表了一个配置类
@Configuration
@Import(Myconfig2.class)//导入合并其他配置类,类似于配置文件中的include标签
public class Myconfig {
//通过方法注册了一个Bean,这里的返回值就是Bean的类型,方法名就是Bean的id
@Bean
public User user(){
return new User();
}
}
在创建一个Test。class
import com.spring.Myconfig;
import com.spring.User;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class TestUser {
public static void main(String[] args) {
//注意这里与之前不同AnnotationConfigApplicationContext
ApplicationContext context = new AnnotationConfigApplicationContext(Myconfig.class);
User user = context.getBean("user", User.class);
System.out.println(user.user);
}
}
关于这种Java类的配置方式,我们在之后的SpringBoot 和 SpringCloud中还会大量看到,我们需要知道这些注解的作用即可!