Bean的配置方式一共分为三种:

1.基于XML(适用于第三方类库,无法在类中写注解以及写命名空间的配置等情况)

2.基于注解(适用于大部分情况)

3.基于Java类

 

以下是三种不同情况的配置方式

 

  基于XML 基于注解 基于Java类配置
Bean 的定义 <bean class="com.gin.UserName" />

@Component(或衍生@Repositry、@Service及@Controller)

public class UserName {...}

@Configuration

public class

Test{

@Bean

public UserName userName() {

return new   UserName();

}  

}

Bean的名称 <bean />

@Component("userName")//空的默认值为userName

public class UserName {...}

@Bean(”userName“)

public UserName userName() {

return new   UserName();

} 

Bean的注入

<property name="userName" ref-bean="userName" />

<p:userName-ref="userName">

public class UserService{

@Autowired

@Qualifier("userName")//@Qualifier是可选项

private UserName userName;

@Bean(”userName“)

public UserName userName() {

return new   UserName();

} 

 

@Bean

public UserService userService() {

UserService userService = new UserService();

userService.setUserName(userName());

@Autowired

private DaoUsername daoUsername;

 

@Bean

public UserService userService() {

UserService userService = new UserService();

userService.setUserName(daoUsername.userName())

Bean的生命过程方法

<bean /> //初始化和销毁都只有一个   

public class UserService{

@Autowired

private UserName userName;

 

@PostConstruct

public void init() {}

@PreDestory

public void destory() {}

}//初始化和销毁可以有多个

Bean的作用范围 bean /> 

 

@Scope("protptype")

public class UserService{}

@Scope("protptype)

@Bean

public UserName userName() {

return new   UserName();

} 

相关文章:

  • 2022-12-23
  • 2021-09-04
  • 2022-12-23
  • 2021-10-16
  • 2021-11-18
  • 2021-07-06
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-20
  • 2021-07-04
  • 2021-12-15
  • 2021-11-27
  • 2021-10-07
相关资源
相似解决方案