Springbootカスタム注記に基づく自動アセンブリ
5738 ワード
1.java beanの定義
2.configurationクラスの作成
3.注記の定義
4.呼び出し
@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());
}
}