1.定义java bean
@Data //lombok注解
public class User {
private Integer userId;
private String userName;
}
2.创建configuration类
public class UserConfig {
@Bean
public User getUser(){
User user = new User();
user.setUserId(1);
user.setUserName("你好啊 哈哈哈哈");
return user;
}
}
3.定义注解
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@AutoConfigurationPackage
@Import(UserConfig.class)
public @interface EnableAutoImport {
}
4.调用
@SpringBootApplication
@EnableAutoImport //打上你自定义的注解
public class DemoApplication implements InitializingBean {
//这里实现了InitializingBean 在初始化bean的时候都会执行afterPropertiesSet
@Autowired
private User user; //注入 user类
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@Override
public void afterPropertiesSet() throws Exception {
//在这里调用了装配进来的类
System.out.println(user.getUserName());
}
}