Chào bạn, trong bài viết hôm nay chúng ta sẽ nói cách sử dụng Annotation Bean để cấu hình cho dự án Spring.
Trong các bài trước về tạo bean trong XML chúng ta sử dụng thẻ
1
2
3
4
5
6
7
8
9
10
11
12
13
@Configuration
public class Application {
@Bean
public CustomerService customerService() {
return new CustomerService();
}
@Bean
public OrderService orderService() {
return new OrderService();
}
}
1
2
3
4
<beans>
<bean id="customerService" class="com.companyname.projectname.CustomerService"/>
<bean id="orderService" class="com.companyname.projectname.OrderService"/>
</beans>
Annotation @Bean cũng hỗ trợ chức năng Initialization và Destruction giống như trong Spring XML là init-method và destroy-method.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class Foo {
public void init() {
// initialization logic via xml config
}
}
public class Bar {
public void cleanup() {
// destruction logic via xml config
}
}
@Configuration
public class AppConfig {
@Bean(initMethod = "init")
public Foo foo() {
return new Foo();
}
@Bean(destroyMethod = "cleanup")
public Bar bar() {
return new Bar();
}
}
Chúng ta sử dụng thuộc tính name để đặt tên cho bean.
1
2
3
4
5
6
7
8
9
10
11
12
13
@Configuration
public class Application {
@Bean(name = "cService")
public CustomerService customerService() {
return new CustomerService();
}
@Bean(name = "oService")
public OrderService orderService() {
return new OrderService();
}
}